OSDN Git Service

dpm: Fix crash when invoked by system
authorSteve Kondik <steve@cyngn.com>
Sun, 11 Sep 2016 11:37:41 +0000 (04:37 -0700)
committerSteve Kondik <steve@cyngn.com>
Tue, 13 Sep 2016 07:12:42 +0000 (00:12 -0700)
 * ApplicationInfo will be null in this case, skip the legacyApp
   check to avoid crashing of system_server.

Change-Id: Ifcbc2528a6d0e9e6bd5df1ad4fcd8d65341ce052

services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java

index d86b834..a227d63 100644 (file)
@@ -5095,12 +5095,14 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
         }
 
         boolean legacyApp = false;
-        if (ai.targetSdkVersion <= Build.VERSION_CODES.M) {
-            legacyApp = true;
-        } else if ("com.google.android.apps.enterprise.dmagent".equals(ai.packageName)
-                && ai.versionCode == 697) {
-            // TODO: STOPSHIP remove this (revert ag/895987) once a new prebuilt is dropped
-            legacyApp = true;
+        if (ai != null) {
+            if (ai.targetSdkVersion <= Build.VERSION_CODES.M) {
+                legacyApp = true;
+            } else if ("com.google.android.apps.enterprise.dmagent".equals(ai.packageName)
+                    && ai.versionCode == 697) {
+                // TODO: STOPSHIP remove this (revert ag/895987) once a new prebuilt is dropped
+                legacyApp = true;
+            }
         }
 
         final int rawStatus = getEncryptionStatus();