There has been a lot of hype recently about a 4S 'Battery Fix' - DHowett found that all it does is replace /System/Library/CoreServices/powerd.bundle/com.apple.SystemPowerProfileDefaults.plist

I looked for any possible impact of this.

While this sounds good... we're changing the power settings right? The reality is that it does absolutely nothing. I wrote a small program to look at the active power settings (which is what the phone uses of the plist that is modified) and this is the result:
Sams-ATT-4S:~ root# showPower
2012-01-25 00:37:57.585 showPower[557:707] IOPMCopyUnabridgedActivePMPreferences:
{
    "AC Power" =     {
        "Disk Sleep Timer" = 10;
        "Display Sleep Timer" = 10;
        "System Sleep Timer" = 2147483647;
        TTYSPreventSleep = 1;
    };
    "Battery Power" =     {
        "Disk Sleep Timer" = 10;
        "Display Sleep Timer" = 2;
        "System Sleep Timer" = 2147483647;
        TTYSPreventSleep = 1;
    };
}

As you can see, there are actually only 4 settings that are used, and it should be noted that none of these settings were changed after installing the package and rebooting. The original and modified copies of the plist is below.

  • Original com.apple.SystemPowerProfileDefaults.plist
  • Modified com.apple.SystemPowerProfileDefaults.plist
  • Differences com.apple.SystemPowerProfileDefaults.diff

  • For reference, the description of the function I called to check is below. The result was the same for both IOPMCopyActivePMPreferences and IOPMCopyUnabridgedActivePMPreferences

    /*!
    @function IOPMCopyActivePMPreferences
    @abstract Returns the _actual_ PM settings _currently_ in use by the system.
    @discussion Incorporates the active power profiles as well as custom settings.
            Does not return any settings unsupported on the running computer.
     */
    CFDictionaryRef     IOPMCopyActivePMPreferences(void);
    
    /*!
    @function IOPMCopyUnabridgedActivePMPreferences
    @abstract Returns the _actual_ PM settings _currently_ in use by the system.
    @discussion Behaves identically to IOPMCopyActivePMPreferences, except 
            IOPMCopyUnabridgedActivePMPreferences returns all settings, including
            those settings unsupported on the running machine.
            i.e. the returned dictionary will include a setting for WakeOnRing
            on a computer without a modem.
     */
    CFDictionaryRef     IOPMCopyUnabridgedActivePMPreferences(void);
    http://www.opensource.apple.com/source/IOKitUser/IOKitUser-647.6.10/pwr_mgt.subproj/IOPMLibPrivate.h