Index: runtime/bin/dbg_message.cc |
diff --git a/runtime/bin/dbg_message.cc b/runtime/bin/dbg_message.cc |
index 2a0e9056cbe8230b2aee9e99ec23455c083ac497..1d8c22c024ab9475b20c2c5b1a8ecdb81d2cff83 100644 |
--- a/runtime/bin/dbg_message.cc |
+++ b/runtime/bin/dbg_message.cc |
@@ -1097,17 +1097,11 @@ void DbgMsgQueue::MessageLoop() { |
// Handle all available vm service messages, up to a resume |
// request. |
bool resume = false; |
- |
- // Release the message queue lock before handling service |
- // messages. This allows notifications to come in while we are |
- // processing long requests and avoids deadlock with the PortMap |
- // lock in the vm. |
- msg_queue_lock_.Exit(); |
while (!resume && Dart_HasServiceMessages()) { |
+ msg_queue_lock_.Exit(); |
resume = Dart_HandleServiceMessages(); |
Cutch
2015/03/10 16:07:28
Maybe add a note in dart_api.h for Dart_HandleServ
|
+ msg_queue_lock_.Enter(); |
} |
- msg_queue_lock_.Enter(); |
- |
if (resume) { |
break; |
} |