Index: runtime/vm/service.cc |
diff --git a/runtime/vm/service.cc b/runtime/vm/service.cc |
index 4cb379eeb177e48843c5bef39274597f6054cc35..1dc403b15ffc2cfc67d5c998bb0dd50447365932 100644 |
--- a/runtime/vm/service.cc |
+++ b/runtime/vm/service.cc |
@@ -2423,8 +2423,12 @@ static const MethodParameter* pause_params[] = { |
static bool Pause(Isolate* isolate, JSONStream* js) { |
- // TODO(turnidge): Don't double-interrupt the isolate here. |
- isolate->ScheduleInterrupts(Isolate::kApiInterrupt); |
+ // TODO(turnidge): This interrupt message could have been sent from |
+ // the service isolate directly, but would require some special case |
+ // code. That would prevent this isolate getting double-interrupted |
+ // with OOB messages. |
+ isolate->SendInternalLibMessage(Isolate::kInterruptMsg, |
+ isolate->pause_capability()); |
PrintSuccess(js); |
return true; |
} |