Skip to content

Commit d678234

Browse files
committed
Fix masking calculation in txbuf.
1 parent fc12f28 commit d678234

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

easywsclient.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,10 +342,11 @@ class _RealWebSocket : public easywsclient::WebSocket
342342
header[13] = masking_key[3];
343343
}
344344
}
345+
// N.B. - txbuf will keep growing until it can be transmitted over the socket:
345346
txbuf.insert(txbuf.end(), header.begin(), header.end());
346347
txbuf.insert(txbuf.end(), message.begin(), message.end());
347348
if (useMask) {
348-
for (size_t i = 0; i != message.size(); ++i) { txbuf[i+header.size()] ^= masking_key[i&0x3]; }
349+
for (size_t i = 0; i != message.size(); ++i) { *(txbuf.end() - message.size() + i) ^= masking_key[i&0x3]; }
349350
}
350351
}
351352

0 commit comments

Comments
 (0)