diff --git a/utils/messageqcpp/bytestreampool.cpp b/utils/messageqcpp/bytestreampool.cpp index 88b828b96..833cdb3e8 100644 --- a/utils/messageqcpp/bytestreampool.cpp +++ b/utils/messageqcpp/bytestreampool.cpp @@ -71,7 +71,10 @@ void ByteStreamPool::returnByteStream(ByteStream *bs) else { boost::mutex::scoped_lock s(mutex); - freeByteStreams.push_back(bs); + if (freeByteStream.size() > maxFreeBuffers) + delete bs; + else + freeByteStreams.push_back(bs); } }