| Index: pkg/dev_compiler/lib/js/legacy/dart_sdk.js
|
| diff --git a/pkg/dev_compiler/lib/js/legacy/dart_sdk.js b/pkg/dev_compiler/lib/js/legacy/dart_sdk.js
|
| index f056e58b355242a8afc6ec59c88a49505e4949b5..c15962df0f4d6840708f81c74b89cae006b26921 100644
|
| --- a/pkg/dev_compiler/lib/js/legacy/dart_sdk.js
|
| +++ b/pkg/dev_compiler/lib/js/legacy/dart_sdk.js
|
| @@ -1865,11 +1865,12 @@ dart_library.library('dart_sdk', null, /* Imports */[
|
| if (ret.done) return ret.value;
|
| let future = ret.value;
|
| if (!dart.is(future, dart.getGenericClass(async.Future))) {
|
| - future = async.Future.value(future);
|
| + var result = future;
|
| + future = async.Future.microtask(() => result);
|
| }
|
| return future.then(dart.dynamic)(onValue, {onError: onError});
|
| }
|
| - return dart.getGenericClass(async.Future)(T).new(function() {
|
| + return dart.getGenericClass(async.Future)(T).microtask(function() {
|
| iter = gen.apply(null, args)[Symbol.iterator]();
|
| return onValue();
|
| });
|
|
|