summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPhilip P. Moltmann <moltmann@google.com>2018-02-08 11:49:21 -0800
committerPhilip P. Moltmann <moltmann@google.com>2018-02-08 11:49:21 -0800
commit6b1912006795c1b65bb8d905ef676915bf073de1 (patch)
treefd3a4f59b2211a6629c0fc3670c21bb4c215d445 /src
parent89480455de67f88cf1dd3be56f60949da6227b58 (diff)
downloadandroid_packages_apps_PackageInstaller-6b1912006795c1b65bb8d905ef676915bf073de1.tar.gz
android_packages_apps_PackageInstaller-6b1912006795c1b65bb8d905ef676915bf073de1.tar.bz2
android_packages_apps_PackageInstaller-6b1912006795c1b65bb8d905ef676915bf073de1.zip
Handle invalid permission group icon
In this case don't set an icon at all. Test: atest PermissionsHostTests Change-Id: Icaa47d50e0f62a159765b155b9120b5b73eb0f7c Fixes: 73112239
Diffstat (limited to 'src')
-rw-r--r--src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java12
-rw-r--r--src/com/android/packageinstaller/permission/ui/handheld/GrantPermissionsViewHandlerImpl.java4
-rw-r--r--src/com/android/packageinstaller/permission/ui/television/GrantPermissionsViewHandlerImpl.java6
3 files changed, 17 insertions, 5 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
index 36d43fcf..47cd8704 100644
--- a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
+++ b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
@@ -397,11 +397,17 @@ public class GrantPermissionsActivity extends OverlayTouchActivity
// Fallback to system.
resources = Resources.getSystem();
}
- int icon = groupState.mGroup.getIconResId();
+
+ Icon icon;
+ try {
+ icon = Icon.createWithResource(resources, groupState.mGroup.getIconResId());
+ } catch (Resources.NotFoundException e) {
+ Log.e(LOG_TAG, "Cannot load icon for group" + groupState.mGroup.getName(), e);
+ icon = null;
+ }
mViewHandler.updateUi(groupState.mGroup.getName(), groupCount, currentIndex,
- Icon.createWithResource(resources, icon), message,
- groupState.mGroup.isUserSet());
+ icon, message, groupState.mGroup.isUserSet());
return true;
}
diff --git a/src/com/android/packageinstaller/permission/ui/handheld/GrantPermissionsViewHandlerImpl.java b/src/com/android/packageinstaller/permission/ui/handheld/GrantPermissionsViewHandlerImpl.java
index be7a763d..ef365b3b 100644
--- a/src/com/android/packageinstaller/permission/ui/handheld/GrantPermissionsViewHandlerImpl.java
+++ b/src/com/android/packageinstaller/permission/ui/handheld/GrantPermissionsViewHandlerImpl.java
@@ -312,7 +312,9 @@ public class GrantPermissionsViewHandlerImpl implements GrantPermissionsViewHand
}
private void updateDescription() {
- mIconView.setImageDrawable(mGroupIcon.loadDrawable(mActivity));
+ if (mGroupIcon != null) {
+ mIconView.setImageDrawable(mGroupIcon.loadDrawable(mActivity));
+ }
mMessageView.setText(mGroupMessage);
}
diff --git a/src/com/android/packageinstaller/permission/ui/television/GrantPermissionsViewHandlerImpl.java b/src/com/android/packageinstaller/permission/ui/television/GrantPermissionsViewHandlerImpl.java
index 3aacc89c..e036ca5d 100644
--- a/src/com/android/packageinstaller/permission/ui/television/GrantPermissionsViewHandlerImpl.java
+++ b/src/com/android/packageinstaller/permission/ui/television/GrantPermissionsViewHandlerImpl.java
@@ -84,7 +84,11 @@ public final class GrantPermissionsViewHandlerImpl implements GrantPermissionsVi
mGroupName = groupName;
mMessageView.setText(message);
- mIconView.setImageIcon(icon);
+
+ if (icon != null) {
+ mIconView.setImageIcon(icon);
+ }
+
mHardDenyButton.setVisibility(showDoNotAsk ? View.VISIBLE : View.GONE);
if (groupCount > 1) {
mCurrentGroupView.setVisibility(View.VISIBLE);