diff options
| author | Vairavan Srinivasan <vairav@codeaurora.org> | 2010-07-22 13:36:40 -0700 |
|---|---|---|
| committer | Vairavan Srinivasan <vairav@codeaurora.org> | 2010-07-22 13:36:40 -0700 |
| commit | 61f07659fe66216d39f1652c94693d1c68cd9e67 (patch) | |
| tree | 97449ba7adebf569141755a6a121c3106453eef4 /services | |
| parent | 13d33472b273088311dc8787e5c55c41d4632071 (diff) | |
| download | frameworks_base-61f07659fe66216d39f1652c94693d1c68cd9e67.zip frameworks_base-61f07659fe66216d39f1652c94693d1c68cd9e67.tar.gz frameworks_base-61f07659fe66216d39f1652c94693d1c68cd9e67.tar.bz2 | |
frameworks/base: Implement Mutual exclusion in BroadcastReceiver
Invoke forceStopPackageLocked after acquiring a lock on
ActivityManagerService.this.
Change-Id: I75a85da03418a87c26b89360cebd3bccc6a25e46
Diffstat (limited to 'services')
| -rw-r--r-- | services/java/com/android/server/am/ActivityManagerService.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java index 0430c74..a388311 100644 --- a/services/java/com/android/server/am/ActivityManagerService.java +++ b/services/java/com/android/server/am/ActivityManagerService.java @@ -5880,10 +5880,12 @@ public final class ActivityManagerService extends ActivityManagerNative implemen String[] pkgs = intent.getStringArrayExtra(Intent.EXTRA_PACKAGES); if (pkgs != null) { for (String pkg : pkgs) { - if (forceStopPackageLocked(pkg, -1, false, false, false)) { - setResultCode(Activity.RESULT_OK); - return; - } + synchronized (ActivityManagerService.this) { + if (forceStopPackageLocked(pkg, -1, false, false, false)) { + setResultCode(Activity.RESULT_OK); + return; + } + } } } } |
