From: Karel Zak Date: Wed, 2 Jul 2025 09:48:22 +0000 (+0200) Subject: lsblk: fix possible use-after-free X-Git-Tag: v2.41.2-rc1~31 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0000a5d6fb6826fb44da5fdffb9c8b918dd54078;p=thirdparty%2Futil-linux.git lsblk: fix possible use-after-free Signed-off-by: Karel Zak (cherry picked from commit 02955d9434396df4019132351d8264b74811dc3f) --- diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c index 3c14ca26a..6940de088 100644 --- a/misc-utils/lsblk.c +++ b/misc-utils/lsblk.c @@ -483,9 +483,12 @@ static char *get_type(struct lsblk_device *dev) char *md_level = NULL; ul_path_read_string(dev->sysfs, &md_level, "md/level"); - res = (md_level && *md_level) ? md_level : xstrdup("md"); - free(md_level); - + if (md_level && *md_level) + res = md_level; + else { + free(md_level); /* may be unused empty string */ + res = xstrdup("md"); + } } else { const char *type = NULL; int x = 0;