From: t.feng Date: Tue, 29 Nov 2022 09:14:09 +0000 (+0800) Subject: fs/minix: Fix memory leaks in grub_minix_lookup_symlink() X-Git-Tag: grub-2.12-rc1~202 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f3fab3ea603d8a6bd3dc320e0cef105293002402;p=thirdparty%2Fgrub.git fs/minix: Fix memory leaks in grub_minix_lookup_symlink() Fixes: a07e6ad01 (* grub-core/fs/minix.c: Remove variable length arrays) Signed-off-by: t.feng Reviewed-by: Daniel Kiper --- diff --git a/grub-core/fs/minix.c b/grub-core/fs/minix.c index 953df1191..5354951d1 100644 --- a/grub-core/fs/minix.c +++ b/grub-core/fs/minix.c @@ -374,7 +374,7 @@ grub_minix_lookup_symlink (struct grub_minix_data *data, grub_minix_ino_t ino) if (!symlink) return grub_errno; if (grub_minix_read_file (data, 0, 0, 0, sz, symlink) < 0) - return grub_errno; + goto fail; symlink[sz] = '\0'; @@ -384,10 +384,12 @@ grub_minix_lookup_symlink (struct grub_minix_data *data, grub_minix_ino_t ino) /* Now load in the old inode. */ if (grub_minix_read_inode (data, ino)) - return grub_errno; + goto fail; grub_minix_find_file (data, symlink); + fail: + grub_free(symlink); return grub_errno; }