]> code.delx.au - refind/commitdiff
Fixed bug that caused volume icons to be read only from default icons
authorsrs5694 <srs5694@users.sourceforge.net>
Wed, 20 Jan 2016 14:35:31 +0000 (09:35 -0500)
committersrs5694 <srs5694@users.sourceforge.net>
Wed, 20 Jan 2016 14:35:31 +0000 (09:35 -0500)
directory.

Makefile
NEWS.txt
debian/changelog
debian/refind.install
docs/refind/todo.html
refind/lib.c
refind/lib.h
refind/main.c

index d5e9359090b30b9f13c3ff5fe6cc1eefa7cb600a..360102810430d00c0568b085d20e8a4fc8fcd1f0 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -12,7 +12,7 @@ MOK_DIR=mok
 GPTSYNC_DIR=gptsync
 EFILIB_DIR=EfiLib
 export EDK2BASE=/usr/local/UDK2014/MyWorkSpace
-export REFIND_VERSION='L"0.10.1"'
+export REFIND_VERSION='L"0.10.1.2"'
 
 # The "all" target builds with the TianoCore library if possible, but falls
 # back on the more easily-installed GNU-EFI library if TianoCore isn't
index 62fc6788f14eb5be9c45eee82faf2872184c1661..79f651ece562639fb9e202af854c149a8dcce170 100644 (file)
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -1,6 +1,10 @@
-0.10.2 (?/??/201?):
+0.10.2 (?/??/2016):
 -------------------
 
+- Fixed bug that caused custom volume badges (vol_????.png) to be read only
+  from default location ("icons" subdirectory), effectively eliminating the
+  ability to adjust them.
+
 - Added centos.crt and centos.cer public key files.
 
 0.10.1 (12/12/2015):
index be00974a258a0b099ce528aa2dfb34749da4f2f6..285cebb440e98bc706685e2cf32d308ecda6af77 100644 (file)
@@ -1,3 +1,9 @@
+refind (0.10.1.1-0ppa1) wily; urgency=medium
+
+  * Test version
+
+ -- Roderick Smith <rodsmith@rodsbooks.com>  Thu, 17 Dec 2015 13:09:44 -0500
+
 refind (0.10.1-0ppa1) wily; urgency=medium
 
   * Version bump
index a0f718f001bbe19e476b3d827f015c1b8e595f38..a036f04e35db325fa95c81f819cd639827920cf3 100644 (file)
@@ -4,7 +4,7 @@ drivers_* usr/share/refind/refind
 fonts usr/share/refind
 icons/*.png usr/share/refind/refind/icons
 icons/README usr/share/refind/refind/icons
-keys etc/refind
+keys etc/refind.d
 mkrlconf usr/sbin
 mvrefind usr/sbin
 refind-install usr/share/refind
index a722738b7c8e14fa6d80de2ffa32753fb52332ca..614723fa66b11ad572c8d7dabef88d042616e42e 100644 (file)
@@ -381,6 +381,10 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        GUI toolkit, so that a single code base can be used on any of the
        major OSes.</li>
 
+    <li>The ability to produce audio output (at least a simple "beep") to signal
+        to visually impaired users when rEFInd is ready to accept input would be
+        helpful.</li>
+
     </ul></li> <!-- New features -->
 
 <li><b>Improvements to the EFI drivers:</b>
index 5bc1828bd9401cda06c9b89e544333f887d919e8..9c7d1f6e3f08682538cff3664c5ecd2c3ba62368 100644 (file)
@@ -998,9 +998,6 @@ VOID ScanVolume(REFIT_VOLUME *Volume)
    // open the root directory of the volume
    Volume->RootDir = LibOpenRoot(Volume->DeviceHandle);
 
-   // Set volume icon based on .VolumeBadge icon or disk kind
-   SetVolumeBadgeIcon(Volume);
-
    Volume->VolName = GetVolumeName(Volume);
 
    if (Volume->RootDir == NULL) {
@@ -1015,10 +1012,6 @@ VOID ScanVolume(REFIT_VOLUME *Volume)
       }
    } // if/else
 
-   // get custom volume icons if present
-   if (!Volume->VolIconImage) {
-      Volume->VolIconImage = egLoadIconAnyType(Volume->RootDir, L"", L".VolumeIcon", GlobalConfig.IconSizes[ICON_SIZE_BIG]);
-   }
 } // ScanVolume()
 
 static VOID ScanExtendedPartition(REFIT_VOLUME *WholeDiskVolume, MBR_PARTITION_INFO *MbrEntry)
@@ -1212,6 +1205,23 @@ VOID ScanVolumes(VOID)
     } // for
 } /* VOID ScanVolumes() */
 
+VOID SetVolumeIcons(VOID) {
+    UINTN        VolumeIndex;
+    REFIT_VOLUME *Volume;
+
+    for (VolumeIndex = 0; VolumeIndex < VolumesCount; VolumeIndex++) {
+        Volume = Volumes[VolumeIndex];
+        // Set volume icon based on .VolumeBadge icon or disk kind
+        SetVolumeBadgeIcon(Volume);
+        if (Volumes[VolumeIndex]->DiskKind == DISK_KIND_INTERNAL) {
+            // get custom volume icons if present
+            if (!Volume->VolIconImage) {
+                Volume->VolIconImage = egLoadIconAnyType(Volume->RootDir, L"", L".VolumeIcon", GlobalConfig.IconSizes[ICON_SIZE_BIG]);
+            }
+        }
+    } // for
+} // VOID SetVolumeIcons()
+
 //
 // file and dir functions
 //
index 7f379b3b1ca1ac746347b69589c23bcc873a9082..12f85efe86de9a59514b21292e8552e2d95aab57 100644 (file)
@@ -103,6 +103,7 @@ VOID FreeList(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount);
 
 VOID SetVolumeBadgeIcon(REFIT_VOLUME *Volume);
 VOID ScanVolumes(VOID);
+VOID SetVolumeIcons(VOID);
 
 BOOLEAN FileExists(IN EFI_FILE *BaseDir, IN CHAR16 *RelativePath);
 
index 36cf2029a9791a4794cbbf0a5ea5e6b46b6f6f7b..881ac38182b9a600e32b54df15efdd646395dbce 100644 (file)
@@ -2216,6 +2216,7 @@ efi_main (EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
     LoadDrivers();
     ScanVolumes(); // Do before ReadConfig() because it needs SelfVolume->VolName
     ReadConfig(GlobalConfig.ConfigFilename);
+    SetVolumeIcons();
 
     if (GlobalConfig.SpoofOSXVersion && GlobalConfig.SpoofOSXVersion[0] != L'\0')
         SetAppleOSInfo();