|
|
|
@ -936,7 +936,8 @@ int streq_paths(const char *a, const char *b)
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
char *strnappend(const char *s, const char *suffix, size_t b) |
|
|
|
|
/* concatenate two strings to a new string, the size of the second string is limited by @b */ |
|
|
|
|
char *strnconcat(const char *s, const char *suffix, size_t b) |
|
|
|
|
{ |
|
|
|
|
size_t a; |
|
|
|
|
char *r; |
|
|
|
@ -966,12 +967,14 @@ char *strnappend(const char *s, const char *suffix, size_t b)
|
|
|
|
|
return r; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
char *strappend(const char *s, const char *suffix) |
|
|
|
|
/* concatenate two strings to a new string */ |
|
|
|
|
char *strconcat(const char *s, const char *suffix) |
|
|
|
|
{ |
|
|
|
|
return strnappend(s, suffix, suffix ? strlen(suffix) : 0); |
|
|
|
|
return strnconcat(s, suffix, suffix ? strlen(suffix) : 0); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
char *strfappend(const char *s, const char *format, ...) |
|
|
|
|
/* concatenate @s and string defined by @format to a new string */ |
|
|
|
|
char *strfconcat(const char *s, const char *format, ...) |
|
|
|
|
{ |
|
|
|
|
va_list ap; |
|
|
|
|
char *val, *res; |
|
|
|
@ -984,7 +987,7 @@ char *strfappend(const char *s, const char *format, ...)
|
|
|
|
|
if (sz < 0) |
|
|
|
|
return NULL; |
|
|
|
|
|
|
|
|
|
res = strnappend(s, val, sz); |
|
|
|
|
res = strnconcat(s, val, sz); |
|
|
|
|
free(val); |
|
|
|
|
return res; |
|
|
|
|
} |
|
|
|
|