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

Commit 8061f64f authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change Ib0d3d9d0 into eclair

* changes:
  PowerManagerService: Clear Binder calling identity around calls to Sensor Manager.
parents 59625fa8 809ad0fc
Loading
Loading
Loading
Loading
+27 −9
Original line number Original line Diff line number Diff line
@@ -2273,15 +2273,27 @@ class PowerManagerService extends IPowerManager.Stub
        if (mSpew) {
        if (mSpew) {
            Log.d(TAG, "enableProximityLockLocked");
            Log.d(TAG, "enableProximityLockLocked");
        }
        }
        // clear calling identity so sensor manager battery stats are accurate
        long identity = Binder.clearCallingIdentity();
        try {
            mSensorManager.registerListener(mProximityListener, mProximitySensor,
            mSensorManager.registerListener(mProximityListener, mProximitySensor,
                    SensorManager.SENSOR_DELAY_NORMAL);
                    SensorManager.SENSOR_DELAY_NORMAL);
        } finally {
            Binder.restoreCallingIdentity(identity);
        }
    }
    }


    private void disableProximityLockLocked() {
    private void disableProximityLockLocked() {
        if (mSpew) {
        if (mSpew) {
            Log.d(TAG, "disableProximityLockLocked");
            Log.d(TAG, "disableProximityLockLocked");
        }
        }
        // clear calling identity so sensor manager battery stats are accurate
        long identity = Binder.clearCallingIdentity();
        try {
            mSensorManager.unregisterListener(mProximityListener);
            mSensorManager.unregisterListener(mProximityListener);
        } finally {
            Binder.restoreCallingIdentity(identity);
        }
        synchronized (mLocks) {
        synchronized (mLocks) {
            if (mProximitySensorActive) {
            if (mProximitySensorActive) {
                mProximitySensorActive = false;
                mProximitySensorActive = false;
@@ -2296,6 +2308,9 @@ class PowerManagerService extends IPowerManager.Stub
        }
        }
        if (mSensorManager != null && mLightSensorEnabled != enable) {
        if (mSensorManager != null && mLightSensorEnabled != enable) {
            mLightSensorEnabled = enable;
            mLightSensorEnabled = enable;
            // clear calling identity so sensor manager battery stats are accurate
            long identity = Binder.clearCallingIdentity();
            try {
                if (enable) {
                if (enable) {
                    mSensorManager.registerListener(mLightListener, mLightSensor,
                    mSensorManager.registerListener(mLightListener, mLightSensor,
                            SensorManager.SENSOR_DELAY_NORMAL);
                            SensorManager.SENSOR_DELAY_NORMAL);
@@ -2303,6 +2318,9 @@ class PowerManagerService extends IPowerManager.Stub
                    mSensorManager.unregisterListener(mLightListener);
                    mSensorManager.unregisterListener(mLightListener);
                    mHandler.removeCallbacks(mAutoBrightnessTask);
                    mHandler.removeCallbacks(mAutoBrightnessTask);
                }
                }
            } finally {
                Binder.restoreCallingIdentity(identity);
            }
        }
        }
    }
    }