summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/utils.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/plugins/utils.c b/plugins/utils.c
index 8bec1cf..d97ad48 100644
--- a/plugins/utils.c
+++ b/plugins/utils.c
@@ -404,17 +404,19 @@ strscat (char *dest, const char *src)
404{ 404{
405 size_t len, l2; 405 size_t len, l2;
406 406
407 if (src) 407 if (src == NULL)
408 l2 = strlen (src);
409 else
410 return dest; 408 return dest;
411
412 if (dest)
413 len = strlen (dest);
414 else 409 else
410 l2 = strlen (src);
411
412 if (dest == NULL) {
415 len = 0; 413 len = 0;
414 dest = malloc (l2 + 1);
415 } else {
416 len = strlen (dest);
417 dest = realloc (dest, len + l2 + 1);
418 }
416 419
417 dest = realloc (dest, len + l2 + 1);
418 if (dest == NULL) 420 if (dest == NULL)
419 terminate (STATE_UNKNOWN, "failed malloc in strscat\n"); 421 terminate (STATE_UNKNOWN, "failed malloc in strscat\n");
420 422