summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/automation/automation_provider.cc5
-rw-r--r--chrome/browser/automation/automation_provider.h5
-rw-r--r--chrome_frame/test/net/test_automation_provider.cc7
-rw-r--r--chrome_frame/test/net/test_automation_provider.h1
4 files changed, 11 insertions, 7 deletions
diff --git a/chrome/browser/automation/automation_provider.cc b/chrome/browser/automation/automation_provider.cc
index 0dbeb36..ec635a9 100644
--- a/chrome/browser/automation/automation_provider.cc
+++ b/chrome/browser/automation/automation_provider.cc
@@ -152,7 +152,10 @@ AutomationProvider::~AutomationProvider() {
void AutomationProvider::ConnectToChannel(const std::string& channel_id) {
TRACE_EVENT_BEGIN("AutomationProvider::ConnectToChannel", 0, "");
- automation_resource_message_filter_ = new AutomationResourceMessageFilter;
+ if (!automation_resource_message_filter_.get()) {
+ automation_resource_message_filter_ = new AutomationResourceMessageFilter;
+ }
+
channel_.reset(
new IPC::SyncChannel(channel_id, IPC::Channel::MODE_CLIENT, this,
automation_resource_message_filter_,
diff --git a/chrome/browser/automation/automation_provider.h b/chrome/browser/automation/automation_provider.h
index 595fad6..3063d2b 100644
--- a/chrome/browser/automation/automation_provider.h
+++ b/chrome/browser/automation/automation_provider.h
@@ -209,6 +209,9 @@ class AutomationProvider : public base::RefCounted<AutomationProvider>,
bool find_next,
IPC::Message* reply_message);
+ scoped_refptr<AutomationResourceMessageFilter>
+ automation_resource_message_filter_;
+
private:
void OnUnhandledMessage();
@@ -397,8 +400,6 @@ class AutomationProvider : public base::RefCounted<AutomationProvider>,
extension_test_result_observer_;
scoped_ptr<AutomationExtensionTracker> extension_tracker_;
PortContainerMap port_containers_;
- scoped_refptr<AutomationResourceMessageFilter>
- automation_resource_message_filter_;
DISALLOW_COPY_AND_ASSIGN(AutomationProvider);
};
diff --git a/chrome_frame/test/net/test_automation_provider.cc b/chrome_frame/test/net/test_automation_provider.cc
index ef5528a..db89bc2 100644
--- a/chrome_frame/test/net/test_automation_provider.cc
+++ b/chrome_frame/test/net/test_automation_provider.cc
@@ -38,7 +38,8 @@ TestAutomationProvider::TestAutomationProvider(
TestAutomationProvider::Factory);
URLRequest::RegisterProtocolFactory("https",
TestAutomationProvider::Factory);
- filter_ = new TestAutomationResourceMessageFilter(this);
+ automation_resource_message_filter_ =
+ new TestAutomationResourceMessageFilter(this);
g_provider_instance_ = this;
}
@@ -47,7 +48,7 @@ TestAutomationProvider::~TestAutomationProvider() {
}
void TestAutomationProvider::OnMessageReceived(const IPC::Message& msg) {
- if (filter_->OnMessageReceived(msg))
+ if (automation_resource_message_filter_->OnMessageReceived(msg))
return; // Message handled by the filter.
__super::OnMessageReceived(msg);
@@ -89,7 +90,7 @@ URLRequestJob* TestAutomationProvider::Factory(URLRequest* request,
static int new_id = 0x00100000;
URLRequestAutomationJob* job = new URLRequestAutomationJob(request,
g_provider_instance_->tab_handle_, new_id++,
- g_provider_instance_->filter_, false);
+ g_provider_instance_->automation_resource_message_filter_, false);
return job;
}
}
diff --git a/chrome_frame/test/net/test_automation_provider.h b/chrome_frame/test/net/test_automation_provider.h
index 9e52b3b..d462108 100644
--- a/chrome_frame/test/net/test_automation_provider.h
+++ b/chrome_frame/test/net/test_automation_provider.h
@@ -47,7 +47,6 @@ class TestAutomationProvider
TestAutomationProviderDelegate* delegate);
protected:
- scoped_refptr<TestAutomationResourceMessageFilter> filter_;
int tab_handle_;
TestAutomationProviderDelegate* delegate_;