From 5f39e88a88f39f7e508dc1fede30a2e0bb486008 Mon Sep 17 00:00:00 2001 From: Martijn van Beurden Date: Fri, 17 Feb 2023 07:30:13 +0100 Subject: [PATCH] Fix strlen being used on uninitialized data --- src/metaflac/utils.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/metaflac/utils.c b/src/metaflac/utils.c index e3f27601..236fde4e 100644 --- a/src/metaflac/utils.c +++ b/src/metaflac/utils.c @@ -76,6 +76,11 @@ void local_strcat(char **dest, const char *source) *dest = safe_realloc_add_3op_(*dest, ndest, /*+*/nsource, /*+*/1); if(*dest == NULL) die("out of memory growing string"); + /* If ndest == 0, strlen in safe_strncat reads + * uninitialized data. To prevent that, set first character + * to zero */ + if(ndest == 0) + *dest[0] = 0; safe_strncat(*dest, source, outlen); }