diff --git a/shim.c b/shim.c index 87202f7ff..d652f5f90 100644 --- a/shim.c +++ b/shim.c @@ -1258,9 +1258,13 @@ EFI_STATUS init_grub(EFI_HANDLE image_handle) } // If the filename is invalid, or the file does not exist, - // just fallback to the default loader. + // just fallback to the default loader. Also fallback to the + // default loader if we get a TFTP error or HTTP error. if (!use_fb && (efi_status == EFI_INVALID_PARAMETER || - efi_status == EFI_NOT_FOUND)) { + efi_status == EFI_NOT_FOUND || + // TODO: Add EFI_HTTP_ERROR when gnu-efi is updated to a version that includes it + // efi_status == EFI_HTTP_ERROR || + efi_status == EFI_TFTP_ERROR)) { console_print( L"start_image() returned %r, falling back to default loader\n", efi_status);