From: Fletcher T. Penney Date: Fri, 6 May 2016 15:41:23 +0000 (-0400) Subject: ADDED: Append array of c characters in signle step X-Git-Tag: 0.1.0a~8^2~1 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1935f9bd3c409938f6e5162e20ace2d4a6a5c86f;p=multimarkdown ADDED: Append array of c characters in signle step --- diff --git a/src/GLibFacade.c b/src/GLibFacade.c index 552d066..3d7e71a 100644 --- a/src/GLibFacade.c +++ b/src/GLibFacade.c @@ -137,6 +137,17 @@ void g_string_append_c(GString* baseString, char appendedCharacter) baseString->str[baseString->currentStringLength] = '\0'; } +void g_string_append_c_array(GString *baseString, char * appendedChars, size_t bytes) +{ + size_t newSizeNeeded = baseString->currentStringLength + bytes; + ensureStringBufferCanHold(baseString, newSizeNeeded); + + memcpy(baseString->str + baseString->currentStringLength,appendedChars, bytes); + + baseString->currentStringLength = newSizeNeeded; + baseString->str[baseString->currentStringLength] = '\0'; +} + void g_string_append_printf(GString* baseString, char* format, ...) { va_list args; diff --git a/src/GLibFacade.h b/src/GLibFacade.h index 731963e..ebd7ed0 100644 --- a/src/GLibFacade.h +++ b/src/GLibFacade.h @@ -51,6 +51,7 @@ GString* g_string_new(char *startingString); char* g_string_free(GString* ripString, bool freeCharacterData); void g_string_append_c(GString* baseString, char appendedCharacter); +void g_string_append_c_array(GString *baseString, char * appendedChars, size_t bytes); void g_string_append(GString* baseString, char *appendedString); void g_string_prepend(GString* baseString, char* prependedString);