diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc index 4d4f0574a60..16f57fe65a0 100644 --- a/runtime/vm/isolate.cc +++ b/runtime/vm/isolate.cc @@ -2099,8 +2099,8 @@ void Isolate::PrintJSON(JSONStream* stream, bool ref) { } JSONObject jsobj(stream); jsobj.AddProperty("type", (ref ? "@Isolate" : "Isolate")); - jsobj.AddFixedServiceId(ISOLATE_SERVICE_ID_FORMAT_STRING, - static_cast(main_port())); + jsobj.AddServiceId(ISOLATE_SERVICE_ID_FORMAT_STRING, + static_cast(main_port())); jsobj.AddProperty("name", name()); jsobj.AddPropertyF("number", "%" Pd64 "", static_cast(main_port())); diff --git a/runtime/vm/json_stream.cc b/runtime/vm/json_stream.cc index 05f474e43ab..1a78ed80453 100644 --- a/runtime/vm/json_stream.cc +++ b/runtime/vm/json_stream.cc @@ -500,6 +500,14 @@ void JSONObject::AddFixedServiceId(const char* format, ...) const { va_end(args); } +void JSONObject::AddServiceId(const char* format, ...) const { + // Add the id property. + va_list args; + va_start(args, format); + stream_->VPrintfProperty("id", format, args); + va_end(args); +} + void JSONObject::AddLocation(const Script& script, TokenPosition token_pos, TokenPosition end_token_pos) const { diff --git a/runtime/vm/json_stream.h b/runtime/vm/json_stream.h index c44a5f615c2..98d39f3002d 100644 --- a/runtime/vm/json_stream.h +++ b/runtime/vm/json_stream.h @@ -307,6 +307,7 @@ class JSONObject : public ValueObject { void AddServiceId(const Object& o) const { stream_->PrintServiceId(o); } void AddFixedServiceId(const char* format, ...) const PRINTF_ATTRIBUTE(2, 3); + void AddServiceId(const char* format, ...) const PRINTF_ATTRIBUTE(2, 3); void AddLocation( const Script& script,