| Index: ipc/ipc_sync_channel.cc
|
| diff --git a/ipc/ipc_sync_channel.cc b/ipc/ipc_sync_channel.cc
|
| index 74d9744b17c14c8a6e794d974f24f3feba0bd093..be8315cdcda8cbf39db265e89559df3eae5dbc85 100644
|
| --- a/ipc/ipc_sync_channel.cc
|
| +++ b/ipc/ipc_sync_channel.cc
|
| @@ -506,11 +506,11 @@ void SyncChannel::WaitForReplyWithNestedMessageLoop(SyncContext* context) {
|
| sync_msg_queue->set_top_send_done_watcher(&send_done_watcher);
|
|
|
| send_done_watcher.StartWatching(context->GetSendDoneEvent(), context);
|
| - bool old_state = MessageLoop::current()->NestableTasksAllowed();
|
|
|
| - MessageLoop::current()->SetNestableTasksAllowed(true);
|
| - MessageLoop::current()->Run();
|
| - MessageLoop::current()->SetNestableTasksAllowed(old_state);
|
| + {
|
| + MessageLoop::ScopedNestableTaskAllower allow(MessageLoop::current());
|
| + MessageLoop::current()->Run();
|
| + }
|
|
|
| sync_msg_queue->set_top_send_done_watcher(old_send_done_event_watcher);
|
| if (old_send_done_event_watcher && old_event) {
|
|
|