Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(39)

Unified Diff: sdk/lib/async/stream_impl.dart

Issue 11862008: Make Streams also cosider a thrown AsyncError a rethrow. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix indentation. Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sdk/lib/async/stream_impl.dart
diff --git a/sdk/lib/async/stream_impl.dart b/sdk/lib/async/stream_impl.dart
index 90ec1b3e0b026344eb8248530fe38fde94bf2c00..7183dc11ff0ed7025a95765c016f05fae5bdf3d1 100644
--- a/sdk/lib/async/stream_impl.dart
+++ b/sdk/lib/async/stream_impl.dart
@@ -337,6 +337,8 @@ abstract class _StreamImpl<T> extends Stream<T> {
_forEachSubscriber((subscriber) {
try {
subscriber._sendData(value);
+ } on AsyncError catch (e) {
+ e.throwDelayed();
} catch (e, s) {
new AsyncError(e, s).throwDelayed();
}
@@ -352,6 +354,8 @@ abstract class _StreamImpl<T> extends Stream<T> {
_forEachSubscriber((subscriber) {
try {
subscriber._sendError(error);
+ } on AsyncError catch (e) {
+ e.throwDelayed();
} catch (e, s) {
new AsyncError.withCause(e, s, error).throwDelayed();
}
@@ -372,6 +376,8 @@ abstract class _StreamImpl<T> extends Stream<T> {
_cancel(subscriber);
try {
subscriber._sendDone();
+ } on AsyncError catch (e) {
+ e.throwDelayed();
} catch (e, s) {
new AsyncError(e, s).throwDelayed();
}

Powered by Google App Engine
This is Rietveld 408576698