diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-07-14 17:41:05 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2016-08-04 12:37:36 +0000 |
commit | 399c965b6064c440ddcf4015f5f8e9d131c7a0a6 (patch) | |
tree | 6b06b60ff365abef0e13b3503d593a0df48d20e8 /chromium/base/message_loop/message_loop.cc | |
parent | 7366110654eec46f21b6824f302356426f48cd74 (diff) |
BASELINE: Update Chromium to 52.0.2743.76 and Ninja to 1.7.1
Change-Id: I382f51b959689505a60f8b707255ecb344f7d8b4
Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'chromium/base/message_loop/message_loop.cc')
-rw-r--r-- | chromium/base/message_loop/message_loop.cc | 45 |
1 files changed, 20 insertions, 25 deletions
diff --git a/chromium/base/message_loop/message_loop.cc b/chromium/base/message_loop/message_loop.cc index 01e7512b19f..3fef91be460 100644 --- a/chromium/base/message_loop/message_loop.cc +++ b/chromium/base/message_loop/message_loop.cc @@ -18,8 +18,8 @@ #include "base/metrics/statistics_recorder.h" #include "base/run_loop.h" #include "base/third_party/dynamic_annotations/dynamic_annotations.h" -#include "base/thread_task_runner_handle.h" #include "base/threading/thread_local.h" +#include "base/threading/thread_task_runner_handle.h" #include "base/time/time.h" #include "base/trace_event/trace_event.h" #include "base/tracked_objects.h" @@ -121,6 +121,8 @@ MessageLoop::TaskObserver::~TaskObserver() { MessageLoop::DestructionObserver::~DestructionObserver() { } +MessageLoop::NestingObserver::~NestingObserver() {} + //------------------------------------------------------------------------------ MessageLoop::MessageLoop(Type type) @@ -263,30 +265,27 @@ void MessageLoop::RemoveDestructionObserver( destruction_observers_.RemoveObserver(destruction_observer); } -void MessageLoop::PostTask( - const tracked_objects::Location& from_here, - const Closure& task) { - task_runner_->PostTask(from_here, task); +void MessageLoop::AddNestingObserver(NestingObserver* observer) { + DCHECK_EQ(this, current()); + nesting_observers_.AddObserver(observer); } -void MessageLoop::PostDelayedTask( - const tracked_objects::Location& from_here, - const Closure& task, - TimeDelta delay) { - task_runner_->PostDelayedTask(from_here, task, delay); +void MessageLoop::RemoveNestingObserver(NestingObserver* observer) { + DCHECK_EQ(this, current()); + nesting_observers_.RemoveObserver(observer); } -void MessageLoop::PostNonNestableTask( +void MessageLoop::PostTask( const tracked_objects::Location& from_here, const Closure& task) { - task_runner_->PostNonNestableTask(from_here, task); + task_runner_->PostTask(from_here, task); } -void MessageLoop::PostNonNestableDelayedTask( +void MessageLoop::PostDelayedTask( const tracked_objects::Location& from_here, const Closure& task, TimeDelta delay) { - task_runner_->PostNonNestableDelayedTask(from_here, task, delay); + task_runner_->PostDelayedTask(from_here, task, delay); } void MessageLoop::Run() { @@ -576,6 +575,11 @@ void MessageLoop::HistogramEvent(int event) { #endif } +void MessageLoop::NotifyBeginNestedLoop() { + FOR_EACH_OBSERVER(NestingObserver, nesting_observers_, + OnBeginNestedMessageLoop()); +} + bool MessageLoop::DoWork() { if (!nestable_tasks_allowed_) { // Task can't be executed right now. @@ -663,14 +667,14 @@ bool MessageLoop::DoIdleWork() { void MessageLoop::DeleteSoonInternal(const tracked_objects::Location& from_here, void(*deleter)(const void*), const void* object) { - PostNonNestableTask(from_here, Bind(deleter, object)); + task_runner()->PostNonNestableTask(from_here, Bind(deleter, object)); } void MessageLoop::ReleaseSoonInternal( const tracked_objects::Location& from_here, void(*releaser)(const void*), const void* object) { - PostNonNestableTask(from_here, Bind(releaser, object)); + task_runner()->PostNonNestableTask(from_here, Bind(releaser, object)); } #if !defined(OS_NACL) @@ -715,15 +719,6 @@ bool MessageLoopForUI::WatchFileDescriptor( // MessageLoopForIO #if !defined(OS_NACL_SFI) -void MessageLoopForIO::AddIOObserver( - MessageLoopForIO::IOObserver* io_observer) { - ToPumpIO(pump_.get())->AddIOObserver(io_observer); -} - -void MessageLoopForIO::RemoveIOObserver( - MessageLoopForIO::IOObserver* io_observer) { - ToPumpIO(pump_.get())->RemoveIOObserver(io_observer); -} #if defined(OS_WIN) void MessageLoopForIO::RegisterIOHandler(HANDLE file, IOHandler* handler) { |