]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
efi: fix GetVariable return status check in 81ca24a
authorIgnat Korchagin <ignat@cloudflare.com>
Fri, 24 Jul 2015 17:46:02 +0000 (20:46 +0300)
committerAndrei Borzenkov <arvidjaar@gmail.com>
Fri, 24 Jul 2015 17:46:02 +0000 (20:46 +0300)
GetVariable should return EFI_BUFFER_TOO_SMALL if given buffer of size
zero; commit incorrectly checked for EFI_SUCCESS.

grub-core/kern/efi/efi.c

index 490edefe5ff2652ad5df8a27530cb91a72f88f72..caf9bcc41e09e0e1eb1206534cc7f1a02a26ea00 100644 (file)
@@ -238,7 +238,7 @@ grub_efi_get_variable (const char *var, const grub_efi_guid_t *guid,
 
   status = efi_call_5 (r->get_variable, var16, guid, NULL, &datasize, NULL);
 
-  if (status != GRUB_EFI_SUCCESS || !datasize)
+  if (status != GRUB_EFI_BUFFER_TOO_SMALL || !datasize)
     {
       grub_free (var16);
       return NULL;