Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(952)

Unified Diff: chrome/browser/automation/automation_provider_observers.cc

Issue 6623071: Fix AutomationProvider from logging false errors by replacing the persistent (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: little fix Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/automation/automation_provider_observers.cc
diff --git a/chrome/browser/automation/automation_provider_observers.cc b/chrome/browser/automation/automation_provider_observers.cc
index 9d244f5b0c84636d02ca45fbc3bcbbcf40f85c40..223d088dd2cfbff29e5969511d63410ff18be599 100644
--- a/chrome/browser/automation/automation_provider_observers.cc
+++ b/chrome/browser/automation/automation_provider_observers.cc
@@ -1000,24 +1000,30 @@ void DomOperationObserver::Observe(
}
DomOperationMessageSender::DomOperationMessageSender(
- AutomationProvider* automation)
- : automation_(automation->AsWeakPtr()) {
+ AutomationProvider* automation,
+ IPC::Message* reply_message,
+ bool use_json_interface)
+ : automation_(automation->AsWeakPtr()),
+ reply_message_(reply_message),
+ use_json_interface_(use_json_interface) {
}
DomOperationMessageSender::~DomOperationMessageSender() {}
void DomOperationMessageSender::OnDomOperationCompleted(
const std::string& json) {
- if (!automation_)
- return;
-
- IPC::Message* reply_message = automation_->reply_message_release();
- if (reply_message) {
- AutomationMsg_DomOperation::WriteReplyParams(reply_message, json);
- automation_->Send(reply_message);
- } else {
- LOG(ERROR) << "DOM operation completed, but no reply message";
+ if (automation_) {
+ if (use_json_interface_) {
+ DictionaryValue dict;
+ dict.SetString("result", json);
+ AutomationJSONReply(automation_, reply_message_.release())
+ .SendSuccess(&dict);
+ } else {
+ AutomationMsg_DomOperation::WriteReplyParams(reply_message_.get(), json);
+ automation_->Send(reply_message_.release());
+ }
}
+ delete this;
}
DocumentPrintedNotificationObserver::DocumentPrintedNotificationObserver(
@@ -2112,24 +2118,3 @@ void WaitForProcessLauncherThreadToGoIdleObserver::RunOnUIThread() {
automation_->Send(reply_message_.release());
Release();
}
-
-ExecuteJavascriptObserver::ExecuteJavascriptObserver(
- AutomationProvider* automation,
- IPC::Message* reply_message)
- : automation_(automation->AsWeakPtr()),
- reply_message_(reply_message) {
-}
-
-ExecuteJavascriptObserver::~ExecuteJavascriptObserver() {
-}
-
-void ExecuteJavascriptObserver::OnDomOperationCompleted(
- const std::string& json) {
- if (automation_) {
- DictionaryValue dict;
- dict.SetString("result", json);
- AutomationJSONReply(automation_, reply_message_.release())
- .SendSuccess(&dict);
- }
- delete this;
-}
« no previous file with comments | « chrome/browser/automation/automation_provider_observers.h ('k') | chrome/browser/automation/testing_automation_provider.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698