| Index: pkg/dev_compiler/tool/input_sdk/lib/js/dart2js/js_dart2js.dart
|
| diff --git a/pkg/dev_compiler/tool/input_sdk/lib/js/dart2js/js_dart2js.dart b/pkg/dev_compiler/tool/input_sdk/lib/js/dart2js/js_dart2js.dart
|
| index 3fc25adc692f40fcbae963abe66fc4bdfbca3dbe..ae590ad1f6205d9fd55853ec8c6fe557b0b95b5d 100644
|
| --- a/pkg/dev_compiler/tool/input_sdk/lib/js/dart2js/js_dart2js.dart
|
| +++ b/pkg/dev_compiler/tool/input_sdk/lib/js/dart2js/js_dart2js.dart
|
| @@ -431,7 +431,12 @@ class JsArray<E> extends JsObject with ListMixin<E> {
|
| }
|
| }
|
|
|
| +// Cross frame objects should not be considered browser types.
|
| +// We include the the instanceof Object test to filter out cross frame objects
|
| +// on FireFox. Surprisingly on FireFox the instanceof Window test succeeds for
|
| +// cross frame windows while the instanceof Object test fails.
|
| bool _isBrowserType(o) => JS('bool',
|
| + '# instanceof Object && ('
|
| '# instanceof Blob || '
|
| '# instanceof Event || '
|
| '(window.KeyRange && # instanceof KeyRange) || '
|
| @@ -440,7 +445,7 @@ bool _isBrowserType(o) => JS('bool',
|
| '# instanceof Node || '
|
| // Int8Array.__proto__ is TypedArray.
|
| '(window.Int8Array && # instanceof Int8Array.__proto__) || '
|
| - '# instanceof Window', o, o, o, o, o, o, o, o);
|
| + '# instanceof Window)', o, o, o, o, o, o, o, o, o);
|
|
|
| class _DartObject {
|
| final _dartObj;
|
|
|