Index: sdk/lib/vmservice/vmservice.dart |
diff --git a/sdk/lib/vmservice/vmservice.dart b/sdk/lib/vmservice/vmservice.dart |
index 445f5d5302d96bc40747da0fe0b881e936dc18d7..dba955574f41233aa483a53907e1c15267aa46f6 100644 |
--- a/sdk/lib/vmservice/vmservice.dart |
+++ b/sdk/lib/vmservice/vmservice.dart |
@@ -21,6 +21,10 @@ part 'message_router.dart'; |
final RawReceivePort isolateLifecyclePort = new RawReceivePort(); |
final RawReceivePort scriptLoadPort = new RawReceivePort(); |
+// This is for use by the embedder. It is a map from the isolateId to |
+// anything. When an isolate goes away, it will be removed from this map. |
+final Map<int, dynamic> isolateEmbedderData = new Map<int, dynamic>(); |
+ |
// These must be kept in sync with the declarations in vm/json_stream.h. |
const kInvalidParams = -32602; |
const kInternalError = -32603; |
@@ -124,6 +128,7 @@ class VMService extends MessageRouter { |
break; |
case Constants.ISOLATE_SHUTDOWN_MESSAGE_ID: |
runningIsolates.isolateShutdown(portId, sp); |
+ isolateEmbedderData.remove(portId); |
break; |
} |
} |