From f0eb3c5f0f9ea3cf52dac18fa9bc73098742a175 Mon Sep 17 00:00:00 2001 From: Dmitry Klimenko Date: Tue, 18 Mar 2014 02:57:11 -0700 Subject: [PATCH] APPLINK-5004; APPLINK-5005 WebSocket big msg fix --- src/thirdPartyLibs/MessageBroker/src/server/mb_tcpserver.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/thirdPartyLibs/MessageBroker/src/server/mb_tcpserver.cpp b/src/thirdPartyLibs/MessageBroker/src/server/mb_tcpserver.cpp index 4a96df0..f9800e8 100644 --- a/src/thirdPartyLibs/MessageBroker/src/server/mb_tcpserver.cpp +++ b/src/thirdPartyLibs/MessageBroker/src/server/mb_tcpserver.cpp @@ -66,11 +66,13 @@ namespace NsMessageBroker ssize_t nb = -1; std::string* pReceivingBuffer = getBufferFor(fd); - std::vector buf(RECV_BUFFER_LENGTH + pReceivingBuffer->size()); + std::vector buf; + buf.reserve(RECV_BUFFER_LENGTH + pReceivingBuffer->size()); DBG_MSG(("Left in pReceivingBuffer: %d : %s\n", pReceivingBuffer->size(), pReceivingBuffer->c_str())); buf.assign(pReceivingBuffer->c_str(), pReceivingBuffer->c_str() + pReceivingBuffer->size()); + buf.resize(RECV_BUFFER_LENGTH + pReceivingBuffer->size()); nb = recv(fd, &buf[pReceivingBuffer->size()], MAX_RECV_DATA, 0); DBG_MSG(("Recieved %d from %d\n", nb, fd)); nb += pReceivingBuffer->size(); -- 2.7.4