Index: lib/runtime/dart/isolate.js |
diff --git a/lib/runtime/dart/isolate.js b/lib/runtime/dart/isolate.js |
index d625ecb66afead486c0f6e13793f8eafa852c029..48c5c74ce167a8d43dafab82eef216831641a3ce 100644 |
--- a/lib/runtime/dart/isolate.js |
+++ b/lib/runtime/dart/isolate.js |
@@ -147,14 +147,14 @@ dart_library.library('dart/isolate', null, /* Imports */[ |
controller.addError(error, error.stackTrace); |
} |
dart.fn(handleError, dart.void, [dart.dynamic]); |
- controller = async.StreamController.broadcast({sync: true, onListen: dart.fn(() => { |
+ controller = async.StreamController.broadcast({sync: true, onListen: dart.fn((() => { |
port = RawReceivePort.new(handleError); |
this.addErrorListener(port.sendPort); |
- }), onCancel: dart.fn(() => { |
+ }).bind(this)), onCancel: dart.fn((() => { |
this.removeErrorListener(port.sendPort); |
port.close(); |
port = null; |
- })}); |
+ }).bind(this))}); |
return controller.stream; |
} |
} |