efi_loader: do not cast return value in EFI_EXIT

UEFI API functions have different return types.
Some return a value of type EFI_STATUS other don't.

We therefore should not cast the return value of EFI_EXIT
to another type than the expression passed to EFI_EXIT.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
master
xypron.glpk@gmx.de 7 years ago committed by Alexander Graf
parent a44bffcc95
commit c81883dfce
  1. 4
      include/efi_loader.h

@ -33,9 +33,9 @@ const char *__efi_nesting_dec(void);
* Exit the u-boot world back to UEFI:
*/
#define EFI_EXIT(ret) ({ \
efi_status_t _r = ret; \
typeof(ret) _r = ret; \
debug("%sEFI: Exit: %s: %u\n", __efi_nesting_dec(), \
__func__, (u32)(_r & ~EFI_ERROR_MASK)); \
__func__, (u32)((uintptr_t) _r & ~EFI_ERROR_MASK)); \
assert(__efi_exit_check()); \
_r; \
})

Loading…
Cancel
Save