Merge "Check return values for null." into klp-modular-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
bffd4d437d
@ -917,6 +917,10 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
final IWindow client = win.mClient;
|
final IWindow client = win.mClient;
|
||||||
final WindowToken token = win.mToken;
|
final WindowToken token = win.mToken;
|
||||||
final DisplayContent displayContent = win.getDisplayContent();
|
final DisplayContent displayContent = win.getDisplayContent();
|
||||||
|
if (displayContent == null) {
|
||||||
|
// It doesn't matter this display is going away.
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
final WindowList windows = win.getWindowList();
|
final WindowList windows = win.getWindowList();
|
||||||
final int N = windows.size();
|
final int N = windows.size();
|
||||||
@ -1094,6 +1098,9 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
private void addAttachedWindowToListLocked(final WindowState win, boolean addToToken) {
|
private void addAttachedWindowToListLocked(final WindowState win, boolean addToToken) {
|
||||||
final WindowToken token = win.mToken;
|
final WindowToken token = win.mToken;
|
||||||
final DisplayContent displayContent = win.getDisplayContent();
|
final DisplayContent displayContent = win.getDisplayContent();
|
||||||
|
if (displayContent == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
final WindowState attached = win.mAttachedWindow;
|
final WindowState attached = win.mAttachedWindow;
|
||||||
|
|
||||||
WindowList tokenWindowList = getTokenWindowsOnDisplay(token, displayContent);
|
WindowList tokenWindowList = getTokenWindowsOnDisplay(token, displayContent);
|
||||||
@ -2251,6 +2258,11 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
return WindowManagerGlobal.ADD_APP_EXITING;
|
return WindowManagerGlobal.ADD_APP_EXITING;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (win.getDisplayContent() == null) {
|
||||||
|
Slog.w(TAG, "Adding window to Display that has been removed.");
|
||||||
|
return WindowManagerGlobal.ADD_INVALID_DISPLAY;
|
||||||
|
}
|
||||||
|
|
||||||
mPolicy.adjustWindowParamsLw(win.mAttrs);
|
mPolicy.adjustWindowParamsLw(win.mAttrs);
|
||||||
win.setShowToOwnerOnlyLocked(mPolicy.checkShowToOwnerOnly(attrs));
|
win.setShowToOwnerOnlyLocked(mPolicy.checkShowToOwnerOnly(attrs));
|
||||||
|
|
||||||
@ -2744,7 +2756,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final DisplayInfo displayInfo = window.getDisplayContent().getDisplayInfo();
|
final DisplayInfo displayInfo = displayContent.getDisplayInfo();
|
||||||
final RectF dispRect = new RectF(0, 0,
|
final RectF dispRect = new RectF(0, 0,
|
||||||
displayInfo.logicalWidth, displayInfo.logicalHeight);
|
displayInfo.logicalWidth, displayInfo.logicalHeight);
|
||||||
matrix.mapRect(dispRect);
|
matrix.mapRect(dispRect);
|
||||||
|
@ -171,9 +171,15 @@ class WindowStateAnimator {
|
|||||||
mAnimator = service.mAnimator;
|
mAnimator = service.mAnimator;
|
||||||
mPolicy = service.mPolicy;
|
mPolicy = service.mPolicy;
|
||||||
mContext = service.mContext;
|
mContext = service.mContext;
|
||||||
final DisplayInfo displayInfo = win.getDisplayContent().getDisplayInfo();
|
final DisplayContent displayContent = win.getDisplayContent();
|
||||||
mAnimDw = displayInfo.appWidth;
|
if (displayContent != null) {
|
||||||
mAnimDh = displayInfo.appHeight;
|
final DisplayInfo displayInfo = displayContent.getDisplayInfo();
|
||||||
|
mAnimDw = displayInfo.appWidth;
|
||||||
|
mAnimDh = displayInfo.appHeight;
|
||||||
|
} else {
|
||||||
|
Slog.w(TAG, "WindowStateAnimator ctor: Display has been removed");
|
||||||
|
// This is checked on return and dealt with.
|
||||||
|
}
|
||||||
|
|
||||||
mWin = win;
|
mWin = win;
|
||||||
mAttachedWinAnimator = win.mAttachedWindow == null
|
mAttachedWinAnimator = win.mAttachedWindow == null
|
||||||
|
Reference in New Issue
Block a user