You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.4 KiB
40 lines
1.4 KiB
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 |
|
From: Andrey Borzenkov <arvidjaar@gmail.com> |
|
Date: Wed, 25 Dec 2013 22:36:28 +0400 |
|
Subject: [PATCH] fix EFI detection on Windows |
|
|
|
We are on legacy BIOS if GetFirmwareEnvironmentVariable fails (returns |
|
zero) *and* extended error information is ERROR_INVALID_FUNCTION. |
|
|
|
Cf. http://msdn.microsoft.com/en-us/library/windows/desktop/ms724325%28v=vs.85%29.aspx |
|
--- |
|
grub-core/osdep/windows/platform.c | 2 +- |
|
ChangeLog | 5 +++++ |
|
2 files changed, 6 insertions(+), 1 deletion(-) |
|
|
|
diff --git a/grub-core/osdep/windows/platform.c b/grub-core/osdep/windows/platform.c |
|
index f2b9d714329..d217efe1704 100644 |
|
--- a/grub-core/osdep/windows/platform.c |
|
+++ b/grub-core/osdep/windows/platform.c |
|
@@ -100,7 +100,7 @@ get_platform (void) |
|
|
|
if (!func_GetFirmwareEnvironmentVariableW (L"BootOrder", GRUB_EFI_GLOBAL_VARIABLE_GUID_WINDOWS_STR, |
|
buffer, sizeof (buffer)) |
|
- && GetLastError () != ERROR_INVALID_FUNCTION) |
|
+ && GetLastError () == ERROR_INVALID_FUNCTION) |
|
{ |
|
platform = PLAT_BIOS; |
|
return; |
|
diff --git a/ChangeLog b/ChangeLog |
|
index 41bcebfb321..21ec1c77c57 100644 |
|
--- a/ChangeLog |
|
+++ b/ChangeLog |
|
@@ -1,3 +1,8 @@ |
|
+2013-12-25 Andrey Borzenkov <arvidjaar@gmail.com> |
|
+ |
|
+ * grub-core/osdep/windows/platform.c (get_platform): Fix EFI |
|
+ detection. |
|
+ |
|
2013-12-24 Vladimir Serbinenko <phcoder@gmail.com> |
|
|
|
* configure.ac: Set version to 2.02~beta2.
|
|
|