From 124a2bdf7a8eacef6588f092f94e5fa07306b113 Mon Sep 17 00:00:00 2001 From: "mpcomplete@google.com" Date: Sat, 9 Aug 2008 00:14:09 +0000 Subject: Fix bug 1317458: Busy wait in IPC::SyncChannel::Send in some cases git-svn-id: svn://svn.chromium.org/chrome/trunk/src@610 0039d316-1c4b-4281-b951-d872f2087c98 --- base/message_loop.cc | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'base') diff --git a/base/message_loop.cc b/base/message_loop.cc index 14fa5d9..5331bc6 100644 --- a/base/message_loop.cc +++ b/base/message_loop.cc @@ -429,18 +429,19 @@ void MessageLoop::DidProcessMessage(const MSG& msg) { } void MessageLoop::SetNestableTasksAllowed(bool allowed) { - nestable_tasks_allowed_ = allowed; - if (!nestable_tasks_allowed_) - return; - // Start the native pump if we are not already pumping. - EnsurePumpATaskWasPosted(); + if (nestable_tasks_allowed_ != allowed) { + nestable_tasks_allowed_ = allowed; + if (!nestable_tasks_allowed_) + return; + // Start the native pump if we are not already pumping. + EnsurePumpATaskWasPosted(); + } } bool MessageLoop::NestableTasksAllowed() const { return nestable_tasks_allowed_; } - bool MessageLoop::ProcessNextWindowsMessage() { MSG msg; if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { -- cgit v1.1