Chromium Code Reviews| Index: runtime/bin/vmservice/vmservice.dart |
| diff --git a/runtime/bin/vmservice/vmservice.dart b/runtime/bin/vmservice/vmservice.dart |
| index 83c21685dbf11a9e7237d7ae988c62392f5801be..f1d3ace3b0f9a7f47fdebd7f16ed6c9e304ed98f 100644 |
| --- a/runtime/bin/vmservice/vmservice.dart |
| +++ b/runtime/bin/vmservice/vmservice.dart |
| @@ -5,7 +5,7 @@ |
| library vmservice; |
| import 'dart:async'; |
| -import "dart:convert"; |
| +import 'dart:convert'; |
| import 'dart:isolate'; |
| import 'dart:typed_data'; |
| @@ -19,26 +19,29 @@ part 'service_request_router.dart'; |
| class VMService { |
| static VMService _instance; |
| RunningIsolates runningIsolates = new RunningIsolates(); |
| + final ReceivePort receivePort; |
|
Ivan Posva
2013/10/29 03:35:50
Are you sure you do not want a RawReceivePort? Or
Cutch
2013/10/29 05:24:57
Switched to RawReceivePort.
|
| - void controlMessageHandler(int code, SendPort sp, String name) { |
| + void controlMessageHandler(int code, int port_id, SendPort sp, String name) { |
| switch (code) { |
| case Constants.ISOLATE_STARTUP_MESSAGE_ID: |
| - runningIsolates.isolateStartup(sp, name); |
| + runningIsolates.isolateStartup(port_id, sp, name); |
| break; |
| case Constants.ISOLATE_SHUTDOWN_MESSAGE_ID: |
| - runningIsolates.isolateShutdown(sp); |
| + runningIsolates.isolateShutdown(port_id, sp); |
| break; |
| } |
| } |
| void messageHandler(message) { |
| - if (message is List && message.length == 3) { |
| - controlMessageHandler(message[0], message[1], message[2]); |
| + assert(message is List); |
| + assert(message.length == 4); |
| + if (message is List && message.length == 4) { |
| + controlMessageHandler(message[0], message[1], message[2], message[3]); |
| } |
| } |
| - VMService._internal() { |
| - port.listen(messageHandler); |
| + VMService._internal() : receivePort = new ReceivePort() { |
| + receivePort.listen(messageHandler); |
| } |
| factory VMService() { |