diff options
author | Amith Yamasani <yamasani@google.com> | 2012-08-29 18:41:53 -0700 |
---|---|---|
committer | Amith Yamasani <yamasani@google.com> | 2012-08-30 16:08:23 -0700 |
commit | f203aeef993b0f4ce65c9630d06bbd50a504e89f (patch) | |
tree | f1624ae664c7f882e9f320dadbab4eea52b6a4ad /services/java/com/android/server/AppWidgetServiceImpl.java | |
parent | b2dd4e87ae8ac6a0402b7a0ed37201f27bcb1b9c (diff) |
Enforce permissions for calls with specified userId
Fix a couple of places where incorrect userIds were being passed in.
Change-Id: I398c676e0488ff7e584be96e96c8b32652134238
Diffstat (limited to 'services/java/com/android/server/AppWidgetServiceImpl.java')
-rw-r--r-- | services/java/com/android/server/AppWidgetServiceImpl.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/services/java/com/android/server/AppWidgetServiceImpl.java b/services/java/com/android/server/AppWidgetServiceImpl.java index 539e5612ed64..79dabee4be6d 100644 --- a/services/java/com/android/server/AppWidgetServiceImpl.java +++ b/services/java/com/android/server/AppWidgetServiceImpl.java @@ -1514,11 +1514,12 @@ class AppWidgetServiceImpl { String pkg = parser.getAttributeValue(null, "pkg"); String cl = parser.getAttributeValue(null, "cl"); - final PackageManager packageManager = mContext.getPackageManager(); + final IPackageManager packageManager = AppGlobals.getPackageManager(); try { - packageManager.getReceiverInfo(new ComponentName(pkg, cl), 0); - } catch (PackageManager.NameNotFoundException e) { - String[] pkgs = packageManager + packageManager.getReceiverInfo(new ComponentName(pkg, cl), 0, + UserHandle.getCallingUserId()); + } catch (RemoteException e) { + String[] pkgs = mContext.getPackageManager() .currentToCanonicalPackageNames(new String[] { pkg }); pkg = pkgs[0]; } |