Index: chrome/browser/extensions/api/messaging/message_service.cc |
=================================================================== |
--- chrome/browser/extensions/api/messaging/message_service.cc (revision 246091) |
+++ chrome/browser/extensions/api/messaging/message_service.cc (working copy) |
@@ -119,14 +119,9 @@ |
static content::RenderProcessHost* GetExtensionProcess( |
Profile* profile, const std::string& extension_id) { |
SiteInstance* site_instance = |
- ExtensionSystem::Get(profile)->process_manager()-> |
- GetSiteInstanceForURL( |
- Extension::GetBaseURLFromExtensionId(extension_id)); |
- |
- if (!site_instance->HasProcess()) |
- return NULL; |
- |
- return site_instance->GetProcess(); |
+ ExtensionSystem::Get(profile)->process_manager()->GetSiteInstanceForURL( |
+ Extension::GetBaseURLFromExtensionId(extension_id)); |
+ return site_instance->HasProcess() ? site_instance->GetProcess() : NULL; |
} |
} // namespace |
@@ -152,12 +147,12 @@ |
// Sanity checks to make sure our channel<->port converters are correct. |
DCHECK(IS_OPENER_PORT_ID(port1_id)); |
- DCHECK(GET_OPPOSITE_PORT_ID(port1_id) == port2_id); |
- DCHECK(GET_OPPOSITE_PORT_ID(port2_id) == port1_id); |
- DCHECK(GET_CHANNEL_ID(port1_id) == GET_CHANNEL_ID(port2_id)); |
- DCHECK(GET_CHANNEL_ID(port1_id) == channel_id); |
- DCHECK(GET_CHANNEL_OPENER_ID(channel_id) == port1_id); |
- DCHECK(GET_CHANNEL_RECEIVERS_ID(channel_id) == port2_id); |
+ DCHECK_EQ(GET_OPPOSITE_PORT_ID(port1_id), port2_id); |
+ DCHECK_EQ(GET_OPPOSITE_PORT_ID(port2_id), port1_id); |
+ DCHECK_EQ(GET_CHANNEL_ID(port1_id), GET_CHANNEL_ID(port2_id)); |
+ DCHECK_EQ(GET_CHANNEL_ID(port1_id), channel_id); |
+ DCHECK_EQ(GET_CHANNEL_OPENER_ID(channel_id), port1_id); |
+ DCHECK_EQ(GET_CHANNEL_RECEIVERS_ID(channel_id), port2_id); |
*port1 = port1_id; |
*port2 = port2_id; |
@@ -303,10 +298,12 @@ |
if (source_contents && ExtensionTabUtil::GetTabId(source_contents) >= 0) { |
// Platform apps can be sent messages, but don't have a Tab concept. |
- if (!target_extension->is_platform_app()) |
- source_tab.reset(ExtensionTabUtil::CreateTabValue(source_contents)); |
- source_url_for_tab = source_url; |
+ // Only the tab id is useful to platform apps for internal use. The |
+ // unnecessary bits will be stripped out in |
+ // MessagingBindings::DispatchOnConnect(). |
+ source_tab.reset(ExtensionTabUtil::CreateTabValue(source_contents)); |
} |
+ source_url_for_tab = source_url; |
not at google - send to devlin
2014/01/24 21:37:27
I don't think this source_url_for_tab is necessary
Lei Zhang
2014/01/25 01:47:09
Under |kUrlKey| right? I removed |source_url_for_t
not at google - send to devlin
2014/01/27 17:51:46
Actually not quite what I meant but what you did i
Lei Zhang
2014/01/27 23:19:13
Yes, I noticed the rabbit hole is quite deep and I
|
OpenChannelParams* params = new OpenChannelParams(source, |
source_tab.Pass(), |
@@ -549,8 +546,7 @@ |
channels_.erase(channel_iter); |
} |
-void MessageService::PostMessage( |
- int source_port_id, const Message& message) { |
+void MessageService::PostMessage(int source_port_id, const Message& message) { |
int channel_id = GET_CHANNEL_ID(source_port_id); |
MessageChannelMap::iterator iter = channels_.find(channel_id); |
if (iter == channels_.end()) { |