| Index: chrome/browser/extensions/api/messaging/message_service.cc
|
| diff --git a/chrome/browser/extensions/api/messaging/message_service.cc b/chrome/browser/extensions/api/messaging/message_service.cc
|
| index 8afd54fd35012e9694ec2c7e16d6d95edf5a8a45..9935618621316ad4b5064bdd54708a8a3660424e 100644
|
| --- a/chrome/browser/extensions/api/messaging/message_service.cc
|
| +++ b/chrome/browser/extensions/api/messaging/message_service.cc
|
| @@ -20,6 +20,7 @@
|
| #include "chrome/browser/extensions/extension_service.h"
|
| #include "chrome/browser/extensions/extension_tab_util.h"
|
| #include "chrome/browser/extensions/extension_util.h"
|
| +#include "chrome/browser/external_protocol/external_protocol_handler.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/tab_contents/tab_util.h"
|
| #include "chrome/common/extensions/extension_messages.h"
|
| @@ -652,6 +653,8 @@ void MessageService::DispatchMessage(int source_port_id,
|
| MessagePort* port = IS_OPENER_PORT_ID(dest_port_id) ?
|
| channel->opener.get() : channel->receiver.get();
|
|
|
| + if (message.user_gesture)
|
| + ExternalProtocolHandler::PermitLaunchUrl();
|
| port->DispatchOnMessage(message, dest_port_id);
|
| }
|
|
|
|
|