summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSho Amano <samano@xevo.com>2017-10-04 04:55:45 +0900
committerJackLivio <jack@livio.io>2017-10-03 15:55:45 -0400
commite2f83f2200021f1fb140c1491c402bde527d8f58 (patch)
tree03880a4503360e1b7b7387122bf3d635879fdbe6
parent945413ef789a9b0b1f3c1196353e82a1afd117c2 (diff)
downloadsdl_core-e2f83f2200021f1fb140c1491c402bde527d8f58.tar.gz
fix: invalid memory access in websocket_handler (#1687)
* fix: invalid memory access in websocket_handler * Revert "fix: invalid memory access in websocket_handler" This reverts commit 120c087d92fac3e3c950f1e689461aafd2fa459c. * fix: (again) invalid memory access in websocket_handler Previous commit was incomplete; we need to shift the whole buffer.
-rw-r--r--src/3rd_party-static/message_broker/src/lib_messagebroker/websocket_handler.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/3rd_party-static/message_broker/src/lib_messagebroker/websocket_handler.cpp b/src/3rd_party-static/message_broker/src/lib_messagebroker/websocket_handler.cpp
index 17c2dd92ae..9fd364cf17 100644
--- a/src/3rd_party-static/message_broker/src/lib_messagebroker/websocket_handler.cpp
+++ b/src/3rd_party-static/message_broker/src/lib_messagebroker/websocket_handler.cpp
@@ -160,9 +160,9 @@ namespace NsMessageBroker
DBG_MSG(("CWebSocketHandler::parseWebSocketData()length:%d; size:%d;"
" position:%d\n", (int)length, size, position));
- for (unsigned long i = 0; (i < size); i++) {
- Buffer[parsedBufferPosition + i] = recBuffer[i+position];
- }
+ memmove(&Buffer[parsedBufferPosition], &recBuffer[position],
+ size - position);
+
b_size -= position;
parsedBufferPosition += length;
recBuffer += length;