diff options
author | John Spurlock <jspurlock@google.com> | 2014-02-10 15:36:24 -0500 |
---|---|---|
committer | John Spurlock <jspurlock@google.com> | 2014-02-10 15:36:24 -0500 |
commit | b8c37e250795fb0bc5c412e97bbc877b54f4affb (patch) | |
tree | 8e65805d463c32f7581c16585d535076b96bca4e | |
parent | f152d950854e3052c5d73aefa43d377c10d7d814 (diff) | |
download | frameworks_base-b8c37e250795fb0bc5c412e97bbc877b54f4affb.zip frameworks_base-b8c37e250795fb0bc5c412e97bbc877b54f4affb.tar.gz frameworks_base-b8c37e250795fb0bc5c412e97bbc877b54f4affb.tar.bz2 |
Fix NPE in PolicyControl.
Bug:12957738
Change-Id: I8051a7a0656f50ed63321f9a79faf0383d7c66b4
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PolicyControl.java | 46 |
1 files changed, 24 insertions, 22 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PolicyControl.java b/policy/src/com/android/internal/policy/impl/PolicyControl.java index e6a7d76..4f355dd 100644 --- a/policy/src/com/android/internal/policy/impl/PolicyControl.java +++ b/policy/src/com/android/internal/policy/impl/PolicyControl.java @@ -140,30 +140,32 @@ public class PolicyControl { sImmersiveStatusFilter = null; sImmersiveNavigationFilter = null; sImmersivePreconfirmationsFilter = null; - String[] nvps = value.split(":"); - for (String nvp : nvps) { - int i = nvp.indexOf('='); - if (i == -1) continue; - String n = nvp.substring(0, i); - String v = nvp.substring(i + 1); - if (n.equals(NAME_IMMERSIVE_FULL)) { - Filter f = Filter.parse(v); - sImmersiveStatusFilter = sImmersiveNavigationFilter = f; - if (sImmersivePreconfirmationsFilter == null) { + if (value != null) { + String[] nvps = value.split(":"); + for (String nvp : nvps) { + int i = nvp.indexOf('='); + if (i == -1) continue; + String n = nvp.substring(0, i); + String v = nvp.substring(i + 1); + if (n.equals(NAME_IMMERSIVE_FULL)) { + Filter f = Filter.parse(v); + sImmersiveStatusFilter = sImmersiveNavigationFilter = f; + if (sImmersivePreconfirmationsFilter == null) { + sImmersivePreconfirmationsFilter = f; + } + } else if (n.equals(NAME_IMMERSIVE_STATUS)) { + Filter f = Filter.parse(v); + sImmersiveStatusFilter = f; + } else if (n.equals(NAME_IMMERSIVE_NAVIGATION)) { + Filter f = Filter.parse(v); + sImmersiveNavigationFilter = f; + if (sImmersivePreconfirmationsFilter == null) { + sImmersivePreconfirmationsFilter = f; + } + } else if (n.equals(NAME_IMMERSIVE_PRECONFIRMATIONS)) { + Filter f = Filter.parse(v); sImmersivePreconfirmationsFilter = f; } - } else if (n.equals(NAME_IMMERSIVE_STATUS)) { - Filter f = Filter.parse(v); - sImmersiveStatusFilter = f; - } else if (n.equals(NAME_IMMERSIVE_NAVIGATION)) { - Filter f = Filter.parse(v); - sImmersiveNavigationFilter = f; - if (sImmersivePreconfirmationsFilter == null) { - sImmersivePreconfirmationsFilter = f; - } - } else if (n.equals(NAME_IMMERSIVE_PRECONFIRMATIONS)) { - Filter f = Filter.parse(v); - sImmersivePreconfirmationsFilter = f; } } if (DEBUG) { |