diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/utils.c | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/plugins/utils.c b/plugins/utils.c index 6e52dab7..05d3f797 100644 --- a/plugins/utils.c +++ b/plugins/utils.c | |||
@@ -415,26 +415,9 @@ strscpy (char *dest, const char *src) | |||
415 | char * | 415 | char * |
416 | strscat (char *dest, const char *src) | 416 | strscat (char *dest, const char *src) |
417 | { | 417 | { |
418 | size_t len, l2; | ||
419 | |||
420 | if (src == NULL) | ||
421 | return dest; | ||
422 | else | ||
423 | l2 = strlen (src); | ||
424 | |||
425 | if (dest == NULL) { | ||
426 | len = 0; | ||
427 | dest = malloc (l2 + 1); | ||
428 | } else { | ||
429 | len = strlen (dest); | ||
430 | dest = realloc (dest, len + l2 + 1); | ||
431 | } | ||
432 | 418 | ||
433 | if (dest == NULL) | 419 | if (src != NULL) |
434 | terminate (STATE_UNKNOWN, "failed malloc in strscat\n"); | 420 | asprintf (&dest, "%s%s", dest, src); |
435 | |||
436 | strncpy (dest + len, src, l2); | ||
437 | dest[len + l2] = '\0'; | ||
438 | 421 | ||
439 | return dest; | 422 | return dest; |
440 | } | 423 | } |