| Index: chrome/browser/extensions/extension_event_router.cc
|
| diff --git a/chrome/browser/extensions/extension_event_router.cc b/chrome/browser/extensions/extension_event_router.cc
|
| index 89df410adebcb0fe29bad3c8df95d869da556085..1d8100f6396bfe5888793eb8c52913e454bf1113 100644
|
| --- a/chrome/browser/extensions/extension_event_router.cc
|
| +++ b/chrome/browser/extensions/extension_event_router.cc
|
| @@ -436,11 +436,16 @@ void ExtensionEventRouter::DispatchEventToProcess(
|
| return;
|
| }
|
|
|
| + // We need to call IncrementInFlightEvents() before DispatchEvent() because
|
| + // the former may prevent this extension from getting suspended and so send
|
| + // the onSuspendCanceled() to the extension, which needs to arrive before the
|
| + // event that DispatchEvent() is dispatching.
|
| + IncrementInFlightEvents(listener_profile, extension);
|
| +
|
| DispatchEvent(process, extension_id,
|
| event->event_name, *event_args,
|
| event->event_url, event->user_gesture,
|
| event->info);
|
| - IncrementInFlightEvents(listener_profile, extension);
|
| }
|
|
|
| bool ExtensionEventRouter::CanDispatchEventToProfile(
|
|
|