Index: net/websockets/websocket_channel.cc |
diff --git a/net/websockets/websocket_channel.cc b/net/websockets/websocket_channel.cc |
index da32e2eea85446747666233f77a77fbedec9d0d8..8310aece7d5fe503ae0c27bd70ebf1380ad1a725 100644 |
--- a/net/websockets/websocket_channel.cc |
+++ b/net/websockets/websocket_channel.cc |
@@ -477,7 +477,8 @@ ChannelState WebSocketChannel::SendFlowControl(int64_t quota) { |
pending_received_frames_.pop(); |
} |
- if (pending_received_frames_.empty() && has_received_close_frame_) { |
+ if (!InClosingState() && pending_received_frames_.empty() && |
+ has_received_close_frame_) { |
// We've been waiting for the client to consume the frames before |
// responding to the closing handshake initiated by the server. |
return RespondToClosingHandshake(); |