Menu

0.6.3 broken on MacBookAir4,2?

2013-01-07
2013-01-08
  • Grant Pannell

    Grant Pannell - 2013-01-07

    Hi,

    Just upgraded to 0.6.3, but I can't get it to work on my MacBookAir4,2. After running install.sh and rebooting, I get stuck on a grey screen. Have to hold option and boot to recovery and wipe out the EFI folder.

    0.6.2 seemed to work fine, so I'm not entirely sure what's going wrong? I guess I'm also a little lost as to how I'd even go about troubleshooting it?

    I run a triple boot, ML, Windows 8, Ubuntu 12.10. Diskutil reports something like this:

    0 GUID_partition_scheme,,251.0 GB, disk0
    1 EFI,,209.7 MB, disk0s1
    2 Apple_HFS, Macintosh HD, 35.0 GB, disk0s2
    3 Apple_Boot, Recovery HD, 650.0 MB, disk0s3
    4 Microsoft Basic Data, Windows HD, 200.0 GB, disk04
    5 Microsoft Basic Data,, 15.2GB, disk0s5

    Any way to troubleshoot this?

     
  • Grant Pannell

    Grant Pannell - 2013-01-07

    bless --info reports
    Blessed System Folder is /Volumes/Macintosh HD/EFI/refind
    Blessed System File is /Volumes/Macintosh HD/EFI/refind/refind_x64.efi
    Open-folder linked list empty
    No alternate OS blessed file/folder
    Unused field unset
    OS X blessed folder is /Volumes/Macintosh HD/EFI/refind

    I also rolled back to 0.6.2 and everything works perfect.

     
  • Roderick W. Smith

    I've tested several ways on my own 32-bit Mac Mini and I've been unable to reproduce this problem. Therefore, I'll need some help in tracking it down. If you (or somebody else with this problem) would be willing to experiment a bit, I'd appreciate it. The first thing is to isolate the problem to the install.sh script or to the rEFInd binary:

    1. Try installing rEFInd 0.6.2 with the install.sh script from 0.6.3. See if it works.
    2. Try installing rEFInd 0.6.3 with the install.sh script from 0.6.2. See if it works.

    Thanks.

     
  • Grant Pannell

    Grant Pannell - 2013-01-07
    1. Try installing rEFInd 0.6.2 with the install.sh script from 0.6.3.

    Works.

    1. Try installing rEFInd 0.6.3 with the install.sh script from 0.6.2.

    Does not work.

     
  • Roderick W. Smith

    OK, so it's in the binary. I've reviewed the code, and I may have found the problem. Here's a test fix:

    http://www.rodsbooks.com/refind-bin-0.6.3.2.zip

    The source is in the git repository, if you care about that. Could you please try that and tell me if it works? Thanks.

     
  • Grant Pannell

    Grant Pannell - 2013-01-08

    Still gives me a grey screen :(

     
  • Grant Pannell

    Grant Pannell - 2013-01-08

    If it helps, I setup a build environment, rolled back some changes from 0.6.3 to 0.6.2 and found this portion in config.c is causing the problem:

       if (SelfVolume->VolName) {
          SelfPath = StrDuplicate(SelfVolume->VolName);
       } else {
          SelfPath = AllocateZeroPool(256 * sizeof(CHAR16));
          SPrint(SelfPath, 255, L"fs%d", SelfVolume->VolNumber);
       } // if/else
       MergeStrings(&SelfPath, SelfDirPath, L':');
       GlobalConfig.DontScanDirs = SelfPath;
    
     

    Last edit: Grant Pannell 2013-01-08
  • Grant Pannell

    Grant Pannell - 2013-01-08

    And more specifically, on my system, the line that causes a crash is:

    SelfPath = StrDuplicate(SelfVolume->VolName);

    Edit: Actually, I'm not sure if that line specifically causes the crash, but if it's commented out, everything works fine. I have no idea how I can debug these things to determine whether that line crashes or if it affects something elsewhere which then crashes.

     

    Last edit: Grant Pannell 2013-01-08
  • Roderick W. Smith

    I've fixed this; it's now available as rEFInd 0.6.4.

     
  • Grant Pannell

    Grant Pannell - 2013-01-08

    Thanks, 0.6.4 works great.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.