OSDN Git Service

Settings: Fix possible NPE
authorMichael W <baddaemon87@gmail.com>
Sun, 18 Sep 2016 09:17:28 +0000 (11:17 +0200)
committerGerrit Code Review <gerrit@cyanogenmod.org>
Sun, 18 Sep 2016 17:15:27 +0000 (10:15 -0700)
Checking applicationInfo on a null object causes a NPE
Check for null first and make the menu entry invisible in that case

Change-Id: I9c6c1156e8d809abf9f13a80eaa908317cba8bdc
Reference: BugDumps 20160909-15 L#39

src/com/android/settings/applications/InstalledAppDetails.java

index 43c3489..ef3788c 100755 (executable)
@@ -413,9 +413,8 @@ public class InstalledAppDetails extends AppInfoBase
         mUpdatedSysApp = (mAppEntry.info.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0;
         menu.findItem(UNINSTALL_UPDATES).setVisible(mUpdatedSysApp && !mAppControlRestricted);
 
-        if (mPackageInfo.applicationInfo != null) {
-            menu.findItem(OPEN_PROTECTED_APPS).setVisible(mPackageInfo.applicationInfo.protect);
-        }
+        menu.findItem(OPEN_PROTECTED_APPS).setVisible(mPackageInfo != null &&
+                mPackageInfo.applicationInfo != null && mPackageInfo.applicationInfo.protect);
     }
 
     @Override