void CuStringInsert(CuString *str, const char *text, int pos) { int length = strlen(text); if (pos > str->length) pos = str->length; if (str->length + length + 1 >= str->size) CuStringResize(str, str->length + length + 1 + STRING_INC); memmove(str->buffer + pos + length, str->buffer + pos, (str->length - pos) + 1); str->length += length; memcpy(str->buffer + pos, text, length); }
void CuStringAppend(CuString *str, const char *text) { int length; if (text == NULL) { text = "NULL"; } length = strlen(text); if (str->length + length + 1 >= str->size) CuStringResize(str, str->length + length + 1 + STRING_INC); str->length += length; strcat(str->buffer, text); }
int CuStringInsert(CuString* str, const char* text, int pos, int dump) { int length = (int)strlen(text); if (pos > str->length) pos = str->length; if ((str->length + length + 1 >= str->size) && CuStringResize(str, str->length + length + 1 + STRING_INC) != 0) { if (dump) { fprintf(stderr, "%s:%s\n%s\n", CU_FAIL_HEADER, "String append in test framework failed due to" "malloc failure. Outputting appended text instead.", text); } return (ENOMEM); } memmove(str->buffer + pos + length, str->buffer + pos, (str->length - pos) + 1); str->length += length; memcpy(str->buffer + pos, text, length); return (0); }
int CuStringAppend(CuString* str, const char* text, int dump) { int length; if (text == NULL) { text = "NULL"; } length = (int)strlen(text); if ((str->length + length + 1 >= str->size) && CuStringResize(str, str->length + length + 1 + STRING_INC) != 0) { if (dump) { fprintf(stderr, "%s:%s\n%s\n", CU_FAIL_HEADER, "String append in test framework failed due to" "malloc failure. Outputting appended text instead.", text); } return (ENOMEM); } str->length += length; strcat(str->buffer, text); return (0); }