]> www.infradead.org Git - mtd-utils.git/commitdiff
ubifs-utils: common: fix memory leak in devtable.c
authorAntonMoryakov <ant.v.moryakov@gmail.com>
Thu, 24 Apr 2025 18:19:22 +0000 (21:19 +0300)
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>
Mon, 2 Jun 2025 05:23:41 +0000 (07:23 +0200)
Report of the static analyzer:
Dynamic memory, referenced by 'line', is allocated at devtable.c:356
by calling function 'getline' and lost at devtable.c:388.
(line: while (getline(&line, &len, f) != -1) {)

Correct explained:
Now line is freed in any exit scenario via out_close which eliminates this error.

Triggers found by static analyzer Svace.

Signed-off-by: Anton Moryakov <ant.v.moryakov@gmail.co
Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
ubifs-utils/common/devtable.c

index 7347f0923e2894f7f1312d31307c8113b8558dd7..2e581ffbeb66346571e10e0319baed308149cf57 100644 (file)
@@ -392,6 +392,7 @@ int parse_devtable(const char *tbl_file)
 
 out_close:
        fclose(f);
+       free(line);
        free_devtable_info();
        return -1;
 }