| Index: runtime/vm/debugger.cc
|
| diff --git a/runtime/vm/debugger.cc b/runtime/vm/debugger.cc
|
| index 39dc8a8e863e2a2a3f0f892e2226eefc068a6e47..8e021e7086ed43d6c148ad4a6bda832097280951 100644
|
| --- a/runtime/vm/debugger.cc
|
| +++ b/runtime/vm/debugger.cc
|
| @@ -305,12 +305,15 @@ void Debugger::InvokeEventHandler(DebuggerEvent* event) {
|
| Service::HandleEvent(&service_event);
|
| }
|
|
|
| - if ((FLAG_steal_breakpoints || (event_handler_ == NULL)) &&
|
| - event->IsPauseEvent()) {
|
| - // We allow the embedder's default breakpoint handler to be overridden.
|
| - isolate_->PauseEventHandler();
|
| - } else if (event_handler_ != NULL) {
|
| - (*event_handler_)(event);
|
| + {
|
| + TransitionVMToNative transition(Thread::Current());
|
| + if ((FLAG_steal_breakpoints || (event_handler_ == NULL)) &&
|
| + event->IsPauseEvent()) {
|
| + // We allow the embedder's default breakpoint handler to be overridden.
|
| + isolate_->PauseEventHandler();
|
| + } else if (event_handler_ != NULL) {
|
| + (*event_handler_)(event);
|
| + }
|
| }
|
|
|
| if (ServiceNeedsDebuggerEvent(event->type()) && event->IsPauseEvent()) {
|
|
|