From d22a7cabca19340ad8d73bdcdf18170fa891fa32 Mon Sep 17 00:00:00 2001 From: Nataniel Borges Date: Mon, 4 Feb 2019 12:42:33 -0800 Subject: [PATCH] Fix `break` location for WM Service message handler The message handler for the WM Service is implemented in a switch statement. For each case the `break` command is located in different locations, making it harder to debug and easier to make mistakes. Move the break conditions to the same location in all messages. Test: Check the conditions of the `handleMessage` method. All messages should end with a `break` command, within their body Change-Id: Ibd225547d46ae1b092c071824570e5dbe01a8dca --- .../android/server/wm/WindowManagerService.java | 35 ++++++++++++---------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 146a8edf244c..3bb660825843 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -4433,7 +4433,8 @@ public class WindowManagerService extends IWindowManager.Stub if (DEBUG_FOCUS_LIGHT) Slog.i(TAG_WM, "Losing focus: " + lastFocus); lastFocus.reportFocusChangedSerialized(false, mInTouchMode); } - } break; + break; + } case REPORT_LOSING_FOCUS: { final DisplayContent displayContent = (DisplayContent) msg.obj; @@ -4450,7 +4451,8 @@ public class WindowManagerService extends IWindowManager.Stub losers.get(i)); losers.get(i).reportFocusChangedSerialized(false, mInTouchMode); } - } break; + break; + } case WINDOW_FREEZE_TIMEOUT: { final DisplayContent displayContent = (DisplayContent) msg.obj; @@ -4614,12 +4616,13 @@ public class WindowManagerService extends IWindowManager.Stub break; } - case NOTIFY_ACTIVITY_DRAWN: + case NOTIFY_ACTIVITY_DRAWN: { try { mActivityTaskManager.notifyActivityDrawn((IBinder) msg.obj); } catch (RemoteException e) { } break; + } case ALL_WINDOWS_DRAWN: { Runnable callback; synchronized (mGlobalLock) { @@ -4656,8 +4659,8 @@ public class WindowManagerService extends IWindowManager.Stub } } } + break; } - break; case CHECK_IF_BOOT_ANIMATION_FINISHED: { final boolean bootAnimationComplete; synchronized (mGlobalLock) { @@ -4667,15 +4670,15 @@ public class WindowManagerService extends IWindowManager.Stub if (bootAnimationComplete) { performEnableScreen(); } + break; } - break; case RESET_ANR_MESSAGE: { synchronized (mGlobalLock) { mLastANRState = null; } mAtmInternal.clearSavedANRState(); + break; } - break; case WALLPAPER_DRAW_PENDING_TIMEOUT: { synchronized (mGlobalLock) { final WallpaperController wallpaperController = @@ -4685,16 +4688,16 @@ public class WindowManagerService extends IWindowManager.Stub mWindowPlacerLocked.performSurfacePlacement(); } } + break; } - break; case UPDATE_DOCKED_STACK_DIVIDER: { synchronized (mGlobalLock) { final DisplayContent displayContent = getDefaultDisplayContentLocked(); displayContent.getDockedDividerController().reevaluateVisibility(false); displayContent.adjustForImeIfNeeded(); } + break; } - break; case WINDOW_REPLACEMENT_TIMEOUT: { synchronized (mGlobalLock) { for (int i = mWindowReplacementTimeouts.size() - 1; i >= 0; i--) { @@ -4703,8 +4706,8 @@ public class WindowManagerService extends IWindowManager.Stub } mWindowReplacementTimeouts.clear(); } + break; } - break; case WINDOW_HIDE_TIMEOUT: { final WindowState window = (WindowState) msg.obj; synchronized (mGlobalLock) { @@ -4724,44 +4727,44 @@ public class WindowManagerService extends IWindowManager.Stub window.setDisplayLayoutNeeded(); mWindowPlacerLocked.performSurfacePlacement(); } + break; } - break; case RESTORE_POINTER_ICON: { synchronized (mGlobalLock) { restorePointerIconLocked((DisplayContent)msg.obj, msg.arg1, msg.arg2); } + break; } - break; case SEAMLESS_ROTATION_TIMEOUT: { final DisplayContent displayContent = (DisplayContent) msg.obj; synchronized (mGlobalLock) { displayContent.onSeamlessRotationTimeout(); } + break; } - break; case SET_HAS_OVERLAY_UI: { mAmInternal.setHasOverlayUi(msg.arg1, msg.arg2 == 1); + break; } - break; case SET_RUNNING_REMOTE_ANIMATION: { mAmInternal.setRunningRemoteAnimation(msg.arg1, msg.arg2 == 1); + break; } - break; case ANIMATION_FAILSAFE: { synchronized (mGlobalLock) { if (mRecentsAnimationController != null) { mRecentsAnimationController.scheduleFailsafe(); } } + break; } - break; case RECOMPUTE_FOCUS: { synchronized (mGlobalLock) { updateFocusedWindowLocked(UPDATE_FOCUS_NORMAL, true /* updateInputWindows */); } + break; } - break; } if (DEBUG_WINDOW_TRACE) { Slog.v(TAG_WM, "handleMessage: exit"); -- 2.11.0