From: Peter Jones Date: Tue, 17 Nov 2015 16:40:23 +0000 (-0500) Subject: shim: fix resource leak on should_use_fallback() error path X-Git-Tag: proxmox/15.7-1+pmx1~124^2^2~7 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=b7e59fd9875efe17514310dbba9b62d911223b52;p=efi-boot-shim.git shim: fix resource leak on should_use_fallback() error path ExitBootServices() and Exit() should both clean these up anyway, but we should do the right thing nonetheless. Signed-off-by: Peter Jones --- diff --git a/shim.c b/shim.c index 305aaf3..d64d15b 100644 --- a/shim.c +++ b/shim.c @@ -1270,8 +1270,8 @@ should_use_fallback(EFI_HANDLE image_handle) unsigned int pathlen = 0; CHAR16 *bootpath = NULL; EFI_FILE_IO_INTERFACE *fio = NULL; - EFI_FILE *vh; - EFI_FILE *fh; + EFI_FILE *vh = NULL; + EFI_FILE *fh = NULL; EFI_STATUS rc; int ret = 0; @@ -1322,11 +1322,13 @@ should_use_fallback(EFI_HANDLE image_handle) uefi_call_wrapper(vh->Close, 1, vh); goto error; } - uefi_call_wrapper(fh->Close, 1, fh); - uefi_call_wrapper(vh->Close, 1, vh); ret = 1; error: + if (fh) + uefi_call_wrapper(fh->Close, 1, fh); + if (vh) + uefi_call_wrapper(vh->Close, 1, vh); if (bootpath) FreePool(bootpath);