Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a728ccda authored by Jason Monk's avatar Jason Monk Committed by android-build-merger
Browse files

Merge \\"SysUI: Protect against crash in BatteryController\\" into nyc-mr1-dev am: 3750c9a1

am: 22769242

Change-Id: Ia55bb48fdb2cf42de2c67752ffc382b06d29a5bd
parents 62e9a55f 22769242
Loading
Loading
Loading
Loading
+16 −8
Original line number Diff line number Diff line
@@ -89,15 +89,19 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC

    @Override
    public void addStateChangedCallback(BatteryController.BatteryStateChangeCallback cb) {
        synchronized (mChangeCallbacks) {
            mChangeCallbacks.add(cb);
        }
        cb.onBatteryLevelChanged(mLevel, mPluggedIn, mCharging);
        cb.onPowerSaveChanged(mPowerSave);
    }

    @Override
    public void removeStateChangedCallback(BatteryController.BatteryStateChangeCallback cb) {
        synchronized (mChangeCallbacks) {
            mChangeCallbacks.remove(cb);
        }
    }

    @Override
    public void onReceive(final Context context, Intent intent) {
@@ -171,18 +175,22 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
    }

    protected void fireBatteryLevelChanged() {
        synchronized (mChangeCallbacks) {
            final int N = mChangeCallbacks.size();
            for (int i = 0; i < N; i++) {
                mChangeCallbacks.get(i).onBatteryLevelChanged(mLevel, mPluggedIn, mCharging);
            }
        }
    }

    private void firePowerSaveChanged() {
        synchronized (mChangeCallbacks) {
            final int N = mChangeCallbacks.size();
            for (int i = 0; i < N; i++) {
                mChangeCallbacks.get(i).onPowerSaveChanged(mPowerSave);
            }
        }
    }

    private boolean mDemoMode;