Merge "Fix crash in ExternalSourceDetailPreferenceController." into pi-dev
am: 5ddff9371d
Change-Id: I26b3122b17b71e9729d198bcbaa8f1620c40e06e
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package com.android.settings.applications.appinfo;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.os.UserManager;
|
||||
import android.support.annotation.VisibleForTesting;
|
||||
import android.support.v7.preference.Preference;
|
||||
@@ -57,9 +58,13 @@ public class ExternalSourceDetailPreferenceController extends AppInfoPreferenceC
|
||||
|
||||
@VisibleForTesting
|
||||
boolean isPotentialAppSource() {
|
||||
final PackageInfo packageInfo = mParent.getPackageInfo();
|
||||
if (packageInfo == null) {
|
||||
return false;
|
||||
}
|
||||
AppStateInstallAppsBridge.InstallAppsState appState =
|
||||
new AppStateInstallAppsBridge(mContext, null, null).createInstallAppsStateFor(
|
||||
mPackageName, mParent.getPackageInfo().applicationInfo.uid);
|
||||
mPackageName, packageInfo.applicationInfo.uid);
|
||||
return appState.isPotentialAppSource();
|
||||
}
|
||||
|
||||
|
@@ -101,4 +101,12 @@ public class ExternalSourceDetailPreferenceControllerTest {
|
||||
|
||||
verify(mPreference).setSummary(summary);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isPotentialAppSource_nullPackageInfo_shouldNotCrash() {
|
||||
when(mUserManager.isManagedProfile()).thenReturn(false);
|
||||
|
||||
mController.isPotentialAppSource();
|
||||
// no crash
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user