]> code.delx.au - refind/blobdiff - refind/main.c
New FreeBSD GPT BIOS-mode boot loader detection code. Also,
[refind] / refind / main.c
index c45aa26508e5ea90383f8a0d42c89ce1a0bfe07c..3c94ad300a2f6d47f18572b0a327a4284bdec992 100644 (file)
@@ -166,7 +166,7 @@ static VOID AboutrEFInd(VOID)
 
     if (AboutMenu.EntryCount == 0) {
         AboutMenu.TitleImage = BuiltinIcon(BUILTIN_ICON_FUNC_ABOUT);
-        AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.8.5.3");
+        AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.8.6.4");
         AddMenuInfoLine(&AboutMenu, L"");
         AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2006-2010 Christoph Pfisterer");
         AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2012-2015 Roderick W. Smith");
@@ -176,7 +176,8 @@ static VOID AboutrEFInd(VOID)
         AddMenuInfoLine(&AboutMenu, L"Running on:");
         AddMenuInfoLine(&AboutMenu, PoolPrint(L" EFI Revision %d.%02d", ST->Hdr.Revision >> 16, ST->Hdr.Revision & ((1 << 16) - 1)));
 #if defined(EFI32)
-        AddMenuInfoLine(&AboutMenu, L" Platform: x86 (32 bit)");
+        AddMenuInfoLine(&AboutMenu, PoolPrint(L" Platform: x86 (32 bit); Secure Boot %s",
+                                              secure_mode() ? L"active" : L"inactive"));
 #elif defined(EFIX64)
         AddMenuInfoLine(&AboutMenu, PoolPrint(L" Platform: x86_64 (64 bit); Secure Boot %s",
                                               secure_mode() ? L"active" : L"inactive"));
@@ -1001,12 +1002,12 @@ VOID SetLoaderDefaults(LOADER_ENTRY *Entry, CHAR16 *LoaderPath, REFIT_VOLUME *Vo
               StriCmp(NameClues, L"bootmgr.efi") == 0 ||
               StriCmp(NameClues, L"bootmgfw.efi") == 0 ||
               StriCmp(NameClues, L"bkpbootmgfw.efi") == 0) {
-      MergeStrings(&OSIconName, L"win", L',');
+      MergeStrings(&OSIconName, L"win8", L',');
       Entry->OSType = 'W';
       ShortcutLetter = 'W';
       Entry->UseGraphicsMode = GlobalConfig.GraphicsFor & GRAPHICS_FOR_WINDOWS;
    } else if (StriCmp(NameClues, L"xom.efi") == 0) {
-      MergeStrings(&OSIconName, L"xom,win", L',');
+      MergeStrings(&OSIconName, L"xom,win,win8", L',');
       Entry->UseGraphicsMode = TRUE;
       Entry->OSType = 'X';
       ShortcutLetter = 'W';
@@ -1472,7 +1473,7 @@ static VOID ScanEfiFiles(REFIT_VOLUME *Volume) {
             ScanFallbackLoader = FALSE;
       } // while()
       Status = DirIterClose(&EfiDirIter);
-      if (Status != EFI_NOT_FOUND)
+      if ((Status != EFI_NOT_FOUND) && (Status != EFI_INVALID_PARAMETER))
          CheckError(Status, L"while scanning the EFI directory");
 
       // Scan user-specified (or additional default) directories....
@@ -1613,7 +1614,7 @@ static UINTN ScanDriverDir(IN CHAR16 *Path)
                                L"", TYPE_EFI, DirEntry->FileName, 0, NULL, FALSE, TRUE);
     }
     Status = DirIterClose(&DirIter);
-    if (Status != EFI_NOT_FOUND) {
+    if ((Status != EFI_NOT_FOUND) && (Status != EFI_INVALID_PARAMETER)) {
         SPrint(FileName, 255, L"while scanning the %s directory", Path);
         CheckError(Status, FileName);
     }
@@ -1726,8 +1727,9 @@ static VOID LoadDrivers(VOID)
     } // while
 
     // connect all devices
-    if (NumFound > 0)
+    if (NumFound > 0) {
        ConnectAllDriversToAllControllers();
+    }
 } /* static VOID LoadDrivers() */
 
 // Locates boot loaders. NOTE: This assumes that GlobalConfig.LegacyType is set correctly.