Index: base/message_loop/message_loop.cc |
diff --git a/base/message_loop/message_loop.cc b/base/message_loop/message_loop.cc |
index 9e33a426eb9f1241be625c25aee1a1585898c6fc..60f0fb89a9107cdec9d39ad2d9236c3b958a697e 100644 |
--- a/base/message_loop/message_loop.cc |
+++ b/base/message_loop/message_loop.cc |
@@ -624,7 +624,9 @@ bool MessageLoop::AddToIncomingQueue(PendingTask* pending_task, |
bool was_empty = incoming_queue_.empty(); |
incoming_queue_.push(*pending_task); |
pending_task->task.Reset(); |
- if (!was_empty) |
+ // The Android UI message loop needs to get notified each time |
+ // a task is added to the incoming queue |
+ if (!was_empty && !pump_->NeedsScheduleWorkPerTask()) |
return true; // Someone else should have started the sub-pump. |
pump = pump_; |