summaryrefslogtreecommitdiffstats
path: root/chromium/base/message_loop/message_loop.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2016-07-14 17:41:05 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2016-08-04 12:37:36 +0000
commit399c965b6064c440ddcf4015f5f8e9d131c7a0a6 (patch)
tree6b06b60ff365abef0e13b3503d593a0df48d20e8 /chromium/base/message_loop/message_loop.cc
parent7366110654eec46f21b6824f302356426f48cd74 (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.cc45
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) {