From bff925b67e9f1ee9f2e7cdfc30ca69c53bc3f6cc Mon Sep 17 00:00:00 2001
From: Stanislav Bohm <stanislav.bohm@vsb.cz>
Date: Fri, 27 Jan 2017 14:34:43 +0100
Subject: [PATCH] ENH: Bigger buffer when receiving in stream mode

---
 src/libloom/socket.cpp | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/libloom/socket.cpp b/src/libloom/socket.cpp
index 19397de..018c533 100644
--- a/src/libloom/socket.cpp
+++ b/src/libloom/socket.cpp
@@ -100,8 +100,15 @@ void Socket::send(std::unique_ptr<SendBuffer> buffer)
 
 void Socket::_buf_alloc(uv_handle_t *handle, size_t suggested_size, uv_buf_t *buf)
 {
-    buf->base = new char[suggested_size];
-    buf->len = suggested_size;
+    size_t size;
+    Socket *socket = static_cast<Socket*>(handle->data);
+    if (socket->stream_mode) {
+        size = 8 << 20; // 8 MB
+    } else {
+        size = suggested_size;
+    }
+    buf->base = new char[size];
+    buf->len = size;
 }
 
 
-- 
GitLab