diff options
| author | 2013-03-08 02:03:25 +0000 | |
|---|---|---|
| committer | 2013-03-08 02:03:25 +0000 | |
| commit | 6916c6ee105e7e91f494ec79c24152fb64d8eed1 (patch) | |
| tree | 4584e0ab509938ab4a6138c0e7fc675005a6772a | |
| parent | dd3e75fa6b9fd93790eec010f40c8bc1c3aeda3c (diff) | |
| parent | a83cab0001ca4d90abe622c22a7af1b0da54f739 (diff) | |
Merge "Do not hang in pm clear on an invalid package name" into jb-mr2-dev
| -rw-r--r-- | cmds/pm/src/com/android/commands/pm/Pm.java | 5 | ||||
| -rw-r--r-- | services/java/com/android/server/am/ActivityManagerService.java | 9 |
2 files changed, 9 insertions, 5 deletions
diff --git a/cmds/pm/src/com/android/commands/pm/Pm.java b/cmds/pm/src/com/android/commands/pm/Pm.java index 22ce8412a47e..98c82b56625b 100644 --- a/cmds/pm/src/com/android/commands/pm/Pm.java +++ b/cmds/pm/src/com/android/commands/pm/Pm.java @@ -1149,10 +1149,7 @@ public final class Pm { ClearDataObserver obs = new ClearDataObserver(); try { - if (!ActivityManagerNative.getDefault().clearApplicationUserData(pkg, obs, userId)) { - System.err.println("Failed"); - } - + ActivityManagerNative.getDefault().clearApplicationUserData(pkg, obs, userId); synchronized (obs) { while (!obs.finished) { try { diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java index d8bcf2cd4494..6f092bf6d50d 100644 --- a/services/java/com/android/server/am/ActivityManagerService.java +++ b/services/java/com/android/server/am/ActivityManagerService.java @@ -3499,7 +3499,14 @@ public final class ActivityManagerService extends ActivityManagerNative } catch (RemoteException e) { } if (pkgUid == -1) { - Slog.w(TAG, "Invalid packageName:" + packageName); + Slog.w(TAG, "Invalid packageName: " + packageName); + if (observer != null) { + try { + observer.onRemoveCompleted(packageName, false); + } catch (RemoteException e) { + Slog.i(TAG, "Observer no longer exists."); + } + } return false; } if (uid == pkgUid || checkComponentPermission( |