| Index: sdk/lib/async/future.dart
|
| diff --git a/sdk/lib/async/future.dart b/sdk/lib/async/future.dart
|
| index 67e2d76284d57fb4b504e3cba3beb8366f61678c..99de7171f6691cf0605a9e0ca0b594e387ba1d14 100644
|
| --- a/sdk/lib/async/future.dart
|
| +++ b/sdk/lib/async/future.dart
|
| @@ -519,7 +519,7 @@ abstract class Future<T> {
|
| // context of all the previous iterations' callbacks.
|
| // This avoids, e.g., deeply nested stack traces from the stack trace
|
| // package.
|
| - nextIteration = Zone.current.bindUnaryCallback((bool keepGoing) {
|
| + nextIteration = Zone.current.bindUnaryCallbackGuarded((bool keepGoing) {
|
| while (keepGoing) {
|
| FutureOr<bool> result;
|
| try {
|
| @@ -537,7 +537,7 @@ abstract class Future<T> {
|
| keepGoing = result;
|
| }
|
| doneSignal._complete(null);
|
| - }, runGuarded: true);
|
| + });
|
| nextIteration(true);
|
| return doneSignal;
|
| }
|
|
|