Index: runtime/vm/isolate.cc |
diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc |
index 226a46a512aa100fec9f331dd856eb550d340a49..47fbc269682880c9d34a398a00c60a8f85eda226 100644 |
--- a/runtime/vm/isolate.cc |
+++ b/runtime/vm/isolate.cc |
@@ -1822,6 +1822,21 @@ void Isolate::VisitPrologueWeakPersistentHandles(HandleVisitor* visitor) { |
} |
+static const char* ExceptionPauseInfoToServiceEnum(Dart_ExceptionPauseInfo pi) { |
+ switch (pi) { |
+ case kPauseOnAllExceptions: |
+ return "All"; |
+ case kNoPauseOnExceptions: |
+ return "None"; |
+ case kPauseOnUnhandledExceptions: |
+ return "Unhandled"; |
+ default: |
+ UNIMPLEMENTED(); |
+ return NULL; |
+ } |
+} |
+ |
+ |
void Isolate::PrintJSON(JSONStream* stream, bool ref) { |
JSONObject jsobj(stream); |
jsobj.AddProperty("type", (ref ? "@Isolate" : "Isolate")); |
@@ -1869,6 +1884,9 @@ void Isolate::PrintJSON(JSONStream* stream, bool ref) { |
jsobj.AddProperty("pauseEvent", &pause_event); |
} |
+ jsobj.AddProperty("exceptionPauseMode", |
+ ExceptionPauseInfoToServiceEnum(debugger()->GetExceptionPauseInfo())); |
+ |
const Library& lib = |
Library::Handle(object_store()->root_library()); |
if (!lib.IsNull()) { |