| Index: sdk/lib/io/websocket.dart
|
| diff --git a/sdk/lib/io/websocket.dart b/sdk/lib/io/websocket.dart
|
| index edb5b6d1ba00e6453740ce5e73d6cf77e725acf0..183714fedcce843c68425af99c0eb4bda4922254 100644
|
| --- a/sdk/lib/io/websocket.dart
|
| +++ b/sdk/lib/io/websocket.dart
|
| @@ -116,7 +116,14 @@ class CompressionOptions {
|
| info = "; client_max_window_bits=$size";
|
| } else {
|
| // Client request. Specify default
|
| - info = "; client_max_window_bits";
|
| + if (clientMaxWindowBits == null) {
|
| + info = "; client_max_window_bits";
|
| + } else {
|
| + info = "; client_max_window_bits=$clientMaxWindowBits";
|
| + }
|
| + if (serverMaxWindowBits != null) {
|
| + info += "; server_max_window_bits=$serverMaxWindowBits";
|
| + }
|
| }
|
|
|
| return info;
|
| @@ -139,14 +146,14 @@ class CompressionOptions {
|
| info.headerValue = _WebSocketImpl.PER_MESSAGE_DEFLATE;
|
|
|
| if (clientNoContextTakeover &&
|
| - (requested != null &&
|
| - requested.parameters.containsKey(_clientNoContextTakeover))) {
|
| + (requested == null || (requested != null &&
|
| + requested.parameters.containsKey(_clientNoContextTakeover)))) {
|
| info.headerValue += "; client_no_context_takeover";
|
| }
|
|
|
| if (serverNoContextTakeover &&
|
| - (requested != null &&
|
| - requested.parameters.containsKey(_serverNoContextTakeover))) {
|
| + (requested == null || (requested != null &&
|
| + requested.parameters.containsKey(_serverNoContextTakeover)))) {
|
| info.headerValue += "; server_no_context_takeover";
|
| }
|
|
|
|
|