am 7b5dd873: Fix 5466793: Fix memory leak in system process when face lock is enabled.
* commit '7b5dd87351ac476dd872c51f9b819d2a3e572382': Fix 5466793: Fix memory leak in system process when face lock is enabled.
This commit is contained in:
@@ -23,4 +23,5 @@ interface IFaceLockInterface {
|
|||||||
void startUi(IBinder containingWindowToken, int x, int y, int width, int height);
|
void startUi(IBinder containingWindowToken, int x, int y, int width, int height);
|
||||||
void stopUi();
|
void stopUi();
|
||||||
void registerCallback(IFaceLockCallback cb);
|
void registerCallback(IFaceLockCallback cb);
|
||||||
|
void unregisterCallback(IFaceLockCallback cb);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -782,6 +782,15 @@ public class LockPatternKeyguardView extends KeyguardViewBase implements Handler
|
|||||||
mUnlockScreen = null;
|
mUnlockScreen = null;
|
||||||
}
|
}
|
||||||
mUpdateMonitor.removeCallback(this);
|
mUpdateMonitor.removeCallback(this);
|
||||||
|
if (mFaceLockService != null) {
|
||||||
|
try {
|
||||||
|
mFaceLockService.unregisterCallback(mFaceLockCallback);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
// Not much we can do
|
||||||
|
}
|
||||||
|
stopFaceLock();
|
||||||
|
mFaceLockService = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isSecure() {
|
private boolean isSecure() {
|
||||||
@@ -1206,6 +1215,13 @@ public class LockPatternKeyguardView extends KeyguardViewBase implements Handler
|
|||||||
|
|
||||||
if (mBoundToFaceLockService) {
|
if (mBoundToFaceLockService) {
|
||||||
if (DEBUG) Log.d(TAG, "before unbind from FaceLock service");
|
if (DEBUG) Log.d(TAG, "before unbind from FaceLock service");
|
||||||
|
if (mFaceLockService != null) {
|
||||||
|
try {
|
||||||
|
mFaceLockService.unregisterCallback(mFaceLockCallback);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
// Not much we can do
|
||||||
|
}
|
||||||
|
}
|
||||||
mContext.unbindService(mFaceLockConnection);
|
mContext.unbindService(mFaceLockConnection);
|
||||||
if (DEBUG) Log.d(TAG, "after unbind from FaceLock service");
|
if (DEBUG) Log.d(TAG, "after unbind from FaceLock service");
|
||||||
mBoundToFaceLockService = false;
|
mBoundToFaceLockService = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user