diff --git a/src/WebSocket.h b/src/WebSocket.h index 62c39fe..682ae11 100644 --- a/src/WebSocket.h +++ b/src/WebSocket.h @@ -94,17 +94,11 @@ public: (us_socket_context_t *) us_socket_context(SSL, (us_socket_t *) this) ); - /* If we already reached the max backpressure and started a deferred close, reject all sends */ - if (webSocketContextData->closeOnBackpressureLimit == 2) { - return DROPPED; - } - /* Skip sending and report success if we are over the limit of maxBackpressure */ if (webSocketContextData->maxBackpressure && webSocketContextData->maxBackpressure < getBufferedAmount()) { /* Also defer a close if we should */ - if (webSocketContextData->closeOnBackpressureLimit == 1) { + if (webSocketContextData->closeOnBackpressureLimit) { us_socket_shutdown_read(SSL, (us_socket_t *) this); - webSocketContextData->closeOnBackpressureLimit = 2; } return DROPPED; } diff --git a/src/WebSocketContextData.h b/src/WebSocketContextData.h index 84f0ca3..8c41894 100644 --- a/src/WebSocketContextData.h +++ b/src/WebSocketContextData.h @@ -73,7 +73,7 @@ public: /* There needs to be a maxBackpressure which will force close everything over that limit */ size_t maxBackpressure = 0; - unsigned char closeOnBackpressureLimit; /* 0, 1 (or 2 internally) */ + bool closeOnBackpressureLimit; bool resetIdleTimeoutOnSend; bool sendPingsAutomatically;