From 61f07659fe66216d39f1652c94693d1c68cd9e67 Mon Sep 17 00:00:00 2001 From: Vairavan Srinivasan Date: Thu, 22 Jul 2010 13:36:40 -0700 Subject: [PATCH] frameworks/base: Implement Mutual exclusion in BroadcastReceiver Invoke forceStopPackageLocked after acquiring a lock on ActivityManagerService.this. Change-Id: I75a85da03418a87c26b89360cebd3bccc6a25e46 --- .../com/android/server/am/ActivityManagerService.java | 10 ++++++---- 1 file 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 0430c748925a0..a3883111c93b5 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; + } + } } } }