diff options
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 796dc77a893d..30b1c6ff7e88 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -15909,6 +15909,7 @@ public class ActivityManagerService extends IActivityManager.Stub String[] excludedPackages, int appOp, Bundle bOptions, boolean serialized, boolean sticky, int userId) { enforceNotIsolatedCaller("broadcastIntent"); + synchronized(this) { intent = verifyBroadcastLocked(intent); @@ -15922,6 +15923,12 @@ public class ActivityManagerService extends IActivityManager.Stub // Permission regimes around sender-supplied broadcast options. enforceBroadcastOptionPermissionsInternal(bOptions, callingUid); + final ComponentName cn = intent.getComponent(); + + Trace.traceBegin( + Trace.TRACE_TAG_ACTIVITY_MANAGER, + "broadcastIntent:" + (cn != null ? cn.toString() : intent.getAction())); + final long origId = Binder.clearCallingIdentity(); try { return broadcastIntentLocked(callerApp, @@ -15932,6 +15939,7 @@ public class ActivityManagerService extends IActivityManager.Stub callingPid, userId, BackgroundStartPrivileges.NONE, null, null); } finally { Binder.restoreCallingIdentity(origId); + Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER); } } } |