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

Unified Diff: ceee/ie/broker/chrome_postman.cc

Issue 4989002: Firing event to broker without worker thread. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month 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
« no previous file with comments | « ceee/ie/broker/chrome_postman.h ('k') | ceee/ie/broker/window_events_funnel.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ceee/ie/broker/chrome_postman.cc
===================================================================
--- ceee/ie/broker/chrome_postman.cc (revision 66617)
+++ ceee/ie/broker/chrome_postman.cc (working copy)
@@ -68,15 +68,16 @@
class FireEventTask : public Task {
public:
- FireEventTask(BSTR event_name, BSTR event_args)
+ FireEventTask(const char* event_name, const char* event_args)
: event_name_(event_name), event_args_(event_args) {}
virtual void Run() {
- ProductionApiDispatcher::get()->FireEvent(event_name_, event_args_);
+ ProductionApiDispatcher::get()->FireEvent(event_name_.c_str(),
+ event_args_.c_str());
}
private:
- CComBSTR event_name_;
- CComBSTR event_args_;
+ std::string event_name_;
+ std::string event_args_;
};
@@ -109,6 +110,8 @@
void ChromePostman::PostMessage(BSTR message, BSTR target) {
MessageLoop* message_loop = chrome_postman_thread_.message_loop();
if (message_loop) {
+ // TODO(siggi@chromium.org): Remove the task subclass and change this to
+ // use NewRunnableMethod.
message_loop->PostTask(
FROM_HERE, new ChromeFrameMessageTask(&chrome_postman_thread_,
message, target));
@@ -118,9 +121,11 @@
}
}
-void ChromePostman::FireEvent(BSTR event_name, BSTR event_args) {
+void ChromePostman::FireEvent(const char* event_name, const char* event_args) {
MessageLoop* message_loop = api_worker_thread_.message_loop();
if (message_loop) {
+ // TODO(siggi@chromium.org): Remove the task subclass and change this to
+ // use NewRunnableMethod.
message_loop->PostTask(FROM_HERE,
new FireEventTask(event_name, event_args));
} else {
« no previous file with comments | « ceee/ie/broker/chrome_postman.h ('k') | ceee/ie/broker/window_events_funnel.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698