CLEANUP: cfgparse: replace "realloc" with "my_realloc2" to fix to memory leak on...
authorIlya Shipitsin <chipitsine@gmail.com>
Thu, 7 Jan 2021 17:45:13 +0000 (22:45 +0500)
committerWilly Tarreau <w@1wt.eu>
Fri, 8 Jan 2021 14:19:21 +0000 (15:19 +0100)
my_realloc2 frees variable in case of allocation failure.

fixes #1030

realloc was introduced in 9e1758efbd68c8b1d27e17e2abe4444e110f3ebe

this might be backported to 2.2, 2.3

(cherry picked from commit 76837bc948578e91e113141bd4c73dad8093be3b)
Signed-off-by: Willy Tarreau <w@1wt.eu>

src/cfgparse.c

index f1d5a41..5d17b9f 100644 (file)
@@ -1967,7 +1967,7 @@ next_line:
 
                        if (err & (PARSE_ERR_TOOLARGE|PARSE_ERR_OVERLAP)) {
                                outlinesize = (outlen + 1023) & -1024;
-                               outline = realloc(outline, outlinesize);
+                               outline = my_realloc2(outline, outlinesize);
                                if (outline == NULL) {
                                        ha_alert("parsing [%s:%d]: line too long, cannot allocate memory.\n",
                                                 file, linenum);