Index: base/message_loop/message_loop.cc |
diff --git a/base/message_loop/message_loop.cc b/base/message_loop/message_loop.cc |
index 1581f6cfb4b494b543a4574c2ca786f18f631188..2212941db9ae15a3a6a30a590389dca826134f35 100644 |
--- a/base/message_loop/message_loop.cc |
+++ b/base/message_loop/message_loop.cc |
@@ -357,12 +357,20 @@ std::string MessageLoop::GetThreadName() const { |
void MessageLoop::SetTaskRunner( |
scoped_refptr<SingleThreadTaskRunner> task_runner) { |
DCHECK_EQ(this, current()); |
+ DCHECK(task_runner); |
DCHECK(task_runner->BelongsToCurrentThread()); |
DCHECK(!unbound_task_runner_); |
task_runner_ = std::move(task_runner); |
SetThreadTaskRunnerHandle(); |
} |
+void MessageLoop::ClearTaskRunnerForTesting() { |
+ DCHECK_EQ(this, current()); |
+ DCHECK(!unbound_task_runner_); |
+ task_runner_ = nullptr; |
+ thread_task_runner_handle_.reset(); |
+} |
+ |
void MessageLoop::SetThreadTaskRunnerHandle() { |
DCHECK_EQ(this, current()); |
// Clear the previous thread task runner first, because only one can exist at |