From f1fa8ea1ca2f083cec3391caef0f38826e5bbd6c Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Mon, 28 Mar 2016 18:45:34 +0200 Subject: COMMON: Use better reallocation strategy in MemoryWriteStreamDynamic. Fixes bug #6983: "SWORD25: long saving time" --- common/memstream.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'common') diff --git a/common/memstream.h b/common/memstream.h index 5ecc553454..a01973c6fa 100644 --- a/common/memstream.h +++ b/common/memstream.h @@ -25,6 +25,7 @@ #include "common/stream.h" #include "common/types.h" +#include "common/util.h" namespace Common { @@ -170,7 +171,7 @@ private: byte *old_data = _data; - _capacity = new_len + 32; + _capacity = MAX(new_len + 32, _capacity * 2); _data = (byte *)malloc(_capacity); _ptr = _data + _pos; -- cgit v1.2.3