Chromium Code Reviews| Index: runtime/bin/dbg_message.cc |
| diff --git a/runtime/bin/dbg_message.cc b/runtime/bin/dbg_message.cc |
| index d0f13d783fce0fdc892cde9237790a333c6b3ed4..89bac102cff3fb2615f4ce33d95e032b4c7b5412 100644 |
| --- a/runtime/bin/dbg_message.cc |
| +++ b/runtime/bin/dbg_message.cc |
| @@ -1409,21 +1409,22 @@ void DbgMsgQueueList::IsolateEventHandler(Dart_IsolateId isolate_id, |
| msg_queue->SendIsolateEvent(isolate_id, kind); |
| Dart_ExitScope(); |
| } else { |
| - DebuggerConnectionHandler::WaitForConnection(); |
| DbgMsgQueue* msg_queue = GetIsolateMsgQueue(isolate_id); |
| - ASSERT(msg_queue != NULL); |
| - Dart_EnterScope(); |
| - msg_queue->SendQueuedMsgs(); |
| - msg_queue->SendIsolateEvent(isolate_id, kind); |
| - if (kind == kInterrupted) { |
| - msg_queue->MessageLoop(); |
| - } else { |
| - ASSERT(kind == kShutdown); |
| - RemoveIsolateMsgQueue(isolate_id); |
| - } |
| - Dart_ExitScope(); |
| // If there is no receive message queue, do not wait for a connection, and |
| // ignore the message. |
| + if (msg_queue != NULL) { |
|
zra
2015/10/26 20:51:10
The vm isolate does not have a debug message queue
|
| + DebuggerConnectionHandler::WaitForConnection(); |
| + Dart_EnterScope(); |
| + msg_queue->SendQueuedMsgs(); |
| + msg_queue->SendIsolateEvent(isolate_id, kind); |
| + if (kind == kInterrupted) { |
| + msg_queue->MessageLoop(); |
| + } else { |
| + ASSERT(kind == kShutdown); |
| + RemoveIsolateMsgQueue(isolate_id); |
| + } |
| + Dart_ExitScope(); |
| + } |
| } |
| } |