Loading services/java/com/android/server/wm/WindowState.java +8 −6 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ import android.graphics.Rect; import android.graphics.RectF; import android.graphics.Region; import android.os.IBinder; import android.os.Process; import android.os.RemoteException; import android.os.UserHandle; import android.util.Slog; Loading Loading @@ -261,8 +262,8 @@ final class WindowState implements WindowManagerPolicy.WindowState { DisplayContent mDisplayContent; // UserId of the owner. Don't display windows of non-current user. final int mOwnerUserId; // UserId and appId of the owner. Don't display windows of non-current user. final int mOwnerUid; WindowState(WindowManagerService service, Session s, IWindow c, WindowToken token, WindowState attachedWindow, int seq, WindowManager.LayoutParams a, Loading @@ -271,7 +272,7 @@ final class WindowState implements WindowManagerPolicy.WindowState { mSession = s; mClient = c; mToken = token; mOwnerUserId = UserHandle.getUserId(s.mUid); mOwnerUid = s.mUid; mAttrs.copyFrom(a); mViewVisibility = viewVisibility; mDisplayContent = displayContent; Loading Loading @@ -904,7 +905,7 @@ final class WindowState implements WindowManagerPolicy.WindowState { boolean showLw(boolean doAnimation, boolean requestAnim) { if (isOtherUsersAppWindow()) { Slog.w(TAG, "Current user " + mService.mCurrentUserId + " trying to display " + this + ", type " + mAttrs.type + ", belonging to " + mOwnerUserId); + this + ", type " + mAttrs.type + ", belonging to " + mOwnerUid); return false; } if (mPolicyVisibility && mPolicyVisibilityAfterAnim) { Loading Loading @@ -985,7 +986,8 @@ final class WindowState implements WindowManagerPolicy.WindowState { boolean isOtherUsersAppWindow() { final int type = mAttrs.type; if ((mOwnerUserId != mService.mCurrentUserId) if ((UserHandle.getUserId(mOwnerUid) != mService.mCurrentUserId) && (mOwnerUid != Process.SYSTEM_UID) && (type >= TYPE_BASE_APPLICATION) && (type <= LAST_APPLICATION_WINDOW) && (type != TYPE_APPLICATION_STARTING)) { return true; Loading services/java/com/android/server/wm/WindowStateAnimator.java +1 −1 Original line number Diff line number Diff line Loading @@ -1292,7 +1292,7 @@ class WindowStateAnimator { boolean performShowLocked() { if (mWin.isOtherUsersAppWindow()) { Slog.w(TAG, "Current user " + mService.mCurrentUserId + " trying to display " + this + ", type " + mWin.mAttrs.type + ", belonging to " + mWin.mOwnerUserId); + this + ", type " + mWin.mAttrs.type + ", belonging to " + mWin.mOwnerUid); return false; } if (DEBUG_VISIBILITY || (DEBUG_STARTING_WINDOW && Loading Loading
services/java/com/android/server/wm/WindowState.java +8 −6 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ import android.graphics.Rect; import android.graphics.RectF; import android.graphics.Region; import android.os.IBinder; import android.os.Process; import android.os.RemoteException; import android.os.UserHandle; import android.util.Slog; Loading Loading @@ -261,8 +262,8 @@ final class WindowState implements WindowManagerPolicy.WindowState { DisplayContent mDisplayContent; // UserId of the owner. Don't display windows of non-current user. final int mOwnerUserId; // UserId and appId of the owner. Don't display windows of non-current user. final int mOwnerUid; WindowState(WindowManagerService service, Session s, IWindow c, WindowToken token, WindowState attachedWindow, int seq, WindowManager.LayoutParams a, Loading @@ -271,7 +272,7 @@ final class WindowState implements WindowManagerPolicy.WindowState { mSession = s; mClient = c; mToken = token; mOwnerUserId = UserHandle.getUserId(s.mUid); mOwnerUid = s.mUid; mAttrs.copyFrom(a); mViewVisibility = viewVisibility; mDisplayContent = displayContent; Loading Loading @@ -904,7 +905,7 @@ final class WindowState implements WindowManagerPolicy.WindowState { boolean showLw(boolean doAnimation, boolean requestAnim) { if (isOtherUsersAppWindow()) { Slog.w(TAG, "Current user " + mService.mCurrentUserId + " trying to display " + this + ", type " + mAttrs.type + ", belonging to " + mOwnerUserId); + this + ", type " + mAttrs.type + ", belonging to " + mOwnerUid); return false; } if (mPolicyVisibility && mPolicyVisibilityAfterAnim) { Loading Loading @@ -985,7 +986,8 @@ final class WindowState implements WindowManagerPolicy.WindowState { boolean isOtherUsersAppWindow() { final int type = mAttrs.type; if ((mOwnerUserId != mService.mCurrentUserId) if ((UserHandle.getUserId(mOwnerUid) != mService.mCurrentUserId) && (mOwnerUid != Process.SYSTEM_UID) && (type >= TYPE_BASE_APPLICATION) && (type <= LAST_APPLICATION_WINDOW) && (type != TYPE_APPLICATION_STARTING)) { return true; Loading
services/java/com/android/server/wm/WindowStateAnimator.java +1 −1 Original line number Diff line number Diff line Loading @@ -1292,7 +1292,7 @@ class WindowStateAnimator { boolean performShowLocked() { if (mWin.isOtherUsersAppWindow()) { Slog.w(TAG, "Current user " + mService.mCurrentUserId + " trying to display " + this + ", type " + mWin.mAttrs.type + ", belonging to " + mWin.mOwnerUserId); + this + ", type " + mWin.mAttrs.type + ", belonging to " + mWin.mOwnerUid); return false; } if (DEBUG_VISIBILITY || (DEBUG_STARTING_WINDOW && Loading