Index: lib/src/server.dart |
diff --git a/lib/src/server.dart b/lib/src/server.dart |
index 4458e0e5919ee65e5ea3ed2a6ce6f20820a6d714..4188e78cd5c724bc17ef6ca7e9a3e39656adfab5 100644 |
--- a/lib/src/server.dart |
+++ b/lib/src/server.dart |
@@ -43,6 +43,9 @@ class Server { |
/// This is the same future that's returned by [listen]. |
Future get done => _streams.done; |
+ /// Whether the connection is closed. |
+ bool get isClosed => _streams.isClosed; |
+ |
/// Creates a [Server] that reads requests from [requests] and writes |
/// responses to [responses]. |
/// |
@@ -141,7 +144,7 @@ class Server { |
return nonNull.isEmpty ? null : nonNull.toList(); |
}); |
}).then((response) { |
- if (response != null) _streams.add(response); |
+ if (!_streams.isClosed && response != null) _streams.add(response); |
}); |
} |