Fix crash due to null uri in ContentObserver.onChange

Also make sure we don't respond to unrecognized changes.

bug: 27291666
Change-Id: I110445231d15427e1fe9e225ed0520af262f740e
This commit is contained in:
Chong Zhang
2016-04-14 14:58:53 -07:00
parent 5ce4e2e78f
commit e34279035a

View File

@@ -646,17 +646,24 @@ public class WindowManagerService extends IWindowManager.Stub
@Override
public void onChange(boolean selfChange, Uri uri) {
if (uri == null) {
return;
}
if (mDisplayInversionEnabledUri.equals(uri)) {
updateCircularDisplayMaskIfNeeded();
} else {
@UpdateAnimationScaleMode
final int mode;
if (uri.equals(mWindowAnimationScaleUri)) {
if (mWindowAnimationScaleUri.equals(uri)) {
mode = WINDOW_ANIMATION_SCALE;
} else if (uri.equals(mTransitionAnimationScaleUri)) {
} else if (mTransitionAnimationScaleUri.equals(uri)) {
mode = TRANSITION_ANIMATION_SCALE;
} else { // uri.equals(mAnimationDurationScaleUri)
} else if (mAnimationDurationScaleUri.equals(uri)) {
mode = ANIMATION_DURATION_SCALE;
} else {
// Ignoring unrecognized content changes
return;
}
Message m = mH.obtainMessage(H.UPDATE_ANIMATION_SCALE, mode, 0);
mH.sendMessage(m);