summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/BasicStream.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2014-06-05 20:49:26 +0200
committerBenoit Foucher <benoit@zeroc.com>2014-06-05 20:49:26 +0200
commitbe5f41f8ffd74f2651b1db1a61badfd41f17a36d (patch)
treeb94687eaeb0f0024be247ef07efe7541b7d813b2 /cpp/src/Ice/BasicStream.cpp
parentFixed ICE-5490: selector doesn't check for EPOLLERR on Linux (diff)
downloadice-be5f41f8ffd74f2651b1db1a61badfd41f17a36d.tar.bz2
ice-be5f41f8ffd74f2651b1db1a61badfd41f17a36d.tar.xz
ice-be5f41f8ffd74f2651b1db1a61badfd41f17a36d.zip
Fixed ICE-5499, new garbage collection support
Diffstat (limited to 'cpp/src/Ice/BasicStream.cpp')
-rw-r--r--cpp/src/Ice/BasicStream.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/Ice/BasicStream.cpp b/cpp/src/Ice/BasicStream.cpp
index 3b2d7fa41c6..2d19bd83d38 100644
--- a/cpp/src/Ice/BasicStream.cpp
+++ b/cpp/src/Ice/BasicStream.cpp
@@ -2038,6 +2038,10 @@ IceInternal::BasicStream::EncapsDecoder::unmarshal(Int index, const Ice::ObjectP
{
try
{
+ if(_stream->instance()->collectObjects())
+ {
+ v->ice_collectable(true);
+ }
v->ice_postUnmarshal();
}
catch(const std::exception& ex)
@@ -2067,6 +2071,10 @@ IceInternal::BasicStream::EncapsDecoder::unmarshal(Int index, const Ice::ObjectP
{
try
{
+ if(_stream->instance()->collectObjects())
+ {
+ (*p)->ice_collectable(true);
+ }
(*p)->ice_postUnmarshal();
}
catch(const std::exception& ex)