summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ConnectionI.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2015-08-05 11:11:41 +0200
committerBenoit Foucher <benoit@zeroc.com>2015-08-05 11:11:41 +0200
commit2e9bbd84219befd7c624cfd542249991d7d4d1c2 (patch)
treef8e9cbeb845f7a45941710978248d1adbc211412 /cpp/src/Ice/ConnectionI.cpp
parentTest script env fixes (diff)
downloadice-2e9bbd84219befd7c624cfd542249991d7d4d1c2.tar.bz2
ice-2e9bbd84219befd7c624cfd542249991d7d4d1c2.tar.xz
ice-2e9bbd84219befd7c624cfd542249991d7d4d1c2.zip
Fixed ICE-6159: release memory allocated by connection buffers when the connection is closed instead of waiting for the reaping
Diffstat (limited to 'cpp/src/Ice/ConnectionI.cpp')
-rw-r--r--cpp/src/Ice/ConnectionI.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/Ice/ConnectionI.cpp b/cpp/src/Ice/ConnectionI.cpp
index f524ca3b8d2..49707d9e124 100644
--- a/cpp/src/Ice/ConnectionI.cpp
+++ b/cpp/src/Ice/ConnectionI.cpp
@@ -2002,6 +2002,14 @@ Ice::ConnectionI::finish(bool close)
}
_asyncRequests.clear();
+ //
+ // Don't wait to be reaped to reclaim memory allocated by read/write streams.
+ //
+ _writeStream.clear();
+ _writeStream.b.clear();
+ _readStream.clear();
+ _readStream.b.clear();
+
if(_callback)
{
closeCallback(_callback);