Index: base/message_loop/message_pump_win.h |
diff --git a/base/message_loop/message_pump_win.h b/base/message_loop/message_pump_win.h |
index dbb41bd527c9d1c8f16de3cf073613bbecc0bbfe..b492678dc32b5c44b5d460f703e82dba13556596 100644 |
--- a/base/message_loop/message_pump_win.h |
+++ b/base/message_loop/message_pump_win.h |
@@ -16,6 +16,7 @@ |
#include "base/message_loop/message_pump_dispatcher.h" |
#include "base/message_loop/message_pump_observer.h" |
#include "base/observer_list.h" |
+#include "base/synchronization/lock.h" |
#include "base/time.h" |
#include "base/win/scoped_handle.h" |
@@ -45,8 +46,8 @@ class BASE_EXPORT MessagePumpWin : public MessagePump { |
void RunWithDispatcher(Delegate* delegate, MessagePumpDispatcher* dispatcher); |
// MessagePump methods: |
- virtual void Run(Delegate* delegate) { RunWithDispatcher(delegate, NULL); } |
- virtual void Quit(); |
+ virtual void Run(Delegate* delegate) OVERRIDE; |
+ virtual void Quit() OVERRIDE; |
protected: |
struct RunState { |
@@ -166,8 +167,9 @@ class BASE_EXPORT MessagePumpForUI : public MessagePumpWin { |
void SetMessageFilter(scoped_ptr<MessageFilter> message_filter); |
// MessagePump methods: |
- virtual void ScheduleWork(); |
- virtual void ScheduleDelayedWork(const TimeTicks& delayed_work_time); |
+ virtual void ScheduleWork() OVERRIDE; |
+ virtual void ScheduleDelayedWork(const TimeTicks& delayed_work_time) OVERRIDE; |
+ virtual void Shutdown() OVERRIDE; |
// Applications can call this to encourage us to process all pending WM_PAINT |
// messages. This method will process all paint messages the Windows Message |
@@ -194,6 +196,9 @@ class BASE_EXPORT MessagePumpForUI : public MessagePumpWin { |
// A hidden message-only window. |
HWND message_hwnd_; |
+ // Protectes access to |message_hwnd_|. |
+ base::Lock message_hwnd_lock_; |
+ |
scoped_ptr<MessageFilter> message_filter_; |
}; |
@@ -327,6 +332,7 @@ class BASE_EXPORT MessagePumpForIO : public MessagePumpWin { |
// MessagePump methods: |
virtual void ScheduleWork(); |
virtual void ScheduleDelayedWork(const TimeTicks& delayed_work_time); |
+ virtual void Shutdown() OVERRIDE; |
// Register the handler to be used when asynchronous IO for the given file |
// completes. The registration persists as long as |file_handle| is valid, so |