Sometimes I cannot think properly

This commit is contained in:
Alex Hultman
2023-05-11 13:08:22 +02:00
parent 62b5feb540
commit ba6ff7b7f4
+2 -2
View File
@@ -108,14 +108,14 @@ public:
/* Special path for long sends of non-compressed, non-SSL messages */ /* Special path for long sends of non-compressed, non-SSL messages */
if (message.length() >= 16 * 1024 && !compress && !SSL && !webSocketData->subscriber && getBufferedAmount() == 0 && Super::getLoopData()->corkOffset == 0) { if (message.length() >= 16 * 1024 && !compress && !SSL && !webSocketData->subscriber && getBufferedAmount() == 0 && Super::getLoopData()->corkOffset == 0) {
char header[14]; char header[10];
int header_length = (int) protocol::formatMessage<isServer>(header, nullptr, 0, opCode, message.length(), compress, fin); int header_length = (int) protocol::formatMessage<isServer>(header, nullptr, 0, opCode, message.length(), compress, fin);
int written = us_socket_write2(0, (struct us_socket_t *)this, header, header_length, message.data(), (int) message.length()); int written = us_socket_write2(0, (struct us_socket_t *)this, header, header_length, message.data(), (int) message.length());
if (written != header_length + (int) message.length()) { if (written != header_length + (int) message.length()) {
/* Buffer up backpressure */ /* Buffer up backpressure */
if (written > header_length) { if (written > header_length) {
webSocketData->buffer.append(message.data() + written, message.length() - (size_t) written); webSocketData->buffer.append(message.data() + written - header_length, message.length() - (size_t) (written - header_length));
} else { } else {
webSocketData->buffer.append(header + written, (size_t) header_length - (size_t) written); webSocketData->buffer.append(header + written, (size_t) header_length - (size_t) written);
} }