From: Lidong Chen Date: Thu, 27 Mar 2025 17:56:33 +0000 (+0000) Subject: loader/i386/linux: Fix resource leak X-Git-Tag: grub-2.14-rc1~214 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=81146fb6238f5202fada90f0da49ba3580b944c2;p=thirdparty%2Fgrub.git loader/i386/linux: Fix resource leak In grub_cmd_initrd(), initrd_ctx is allocated before calling grub_relocator_alloc_chunk_align(). When that function fails, initrd_ctx should be freed before exiting grub_cmd_initrd(). Fixes: CID 473852 Signed-off-by: Lidong Chen Reviewed-by: Daniel Kiper --- diff --git a/grub-core/loader/i386/linux.c b/grub-core/loader/i386/linux.c index b7c1e057e..4b26cd816 100644 --- a/grub-core/loader/i386/linux.c +++ b/grub-core/loader/i386/linux.c @@ -1128,7 +1128,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), GRUB_RELOCATOR_PREFERENCE_HIGH, 1); if (err) - return err; + goto fail; initrd_mem = get_virtual_current_address (ch); initrd_mem_target = get_physical_target_address (ch); }