diff options
author | Wale Ogunwale <ogunwale@google.com> | 2015-01-12 10:24:36 -0800 |
---|---|---|
committer | Wale Ogunwale <ogunwale@google.com> | 2015-01-12 14:01:25 -0800 |
commit | 74bf065e43a3075ffcaf9fcdc1ef423a1e14b761 (patch) | |
tree | 259223c89176c4c5f1ec4cd27ace082ab664e75f /policy | |
parent | a97fe1387df731ddbbdae7c75dfbdfa4f1eb0339 (diff) | |
download | frameworks_base-74bf065e43a3075ffcaf9fcdc1ef423a1e14b761.zip frameworks_base-74bf065e43a3075ffcaf9fcdc1ef423a1e14b761.tar.gz frameworks_base-74bf065e43a3075ffcaf9fcdc1ef423a1e14b761.tar.bz2 |
Don't allow windows with invalid types to be added.
Bug: 18950225
Change-Id: Ia7ead72d036c7628e0a97f8fe9fef2a35525e4df
Diffstat (limited to 'policy')
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindowManager.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java index f0c6bb7..e855cf1 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java @@ -1641,8 +1641,14 @@ public class PhoneWindowManager implements WindowManagerPolicy { outAppOp[0] = AppOpsManager.OP_NONE; - if (type < WindowManager.LayoutParams.FIRST_SYSTEM_WINDOW - || type > WindowManager.LayoutParams.LAST_SYSTEM_WINDOW) { + if (!((type >= FIRST_APPLICATION_WINDOW && type <= LAST_APPLICATION_WINDOW) + || (type >= FIRST_SUB_WINDOW && type <= LAST_SUB_WINDOW) + || (type >= FIRST_SYSTEM_WINDOW && type <= LAST_SYSTEM_WINDOW))) { + return WindowManagerGlobal.ADD_INVALID_TYPE; + } + + if (type < FIRST_SYSTEM_WINDOW || type > LAST_SYSTEM_WINDOW) { + // Window manager will make sure these are okay. return WindowManagerGlobal.ADD_OKAY; } String permission = null; |