diff options
Diffstat (limited to 'java/src/IceInternal/IncomingBase.java')
-rw-r--r-- | java/src/IceInternal/IncomingBase.java | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/java/src/IceInternal/IncomingBase.java b/java/src/IceInternal/IncomingBase.java index 0551a37c388..40a6ca1968e 100644 --- a/java/src/IceInternal/IncomingBase.java +++ b/java/src/IceInternal/IncomingBase.java @@ -62,7 +62,7 @@ public class IncomingBase // penalty! We must make sure that __destroy() is called instead, // to reclaim resources. // - public void + public synchronized void __destroy() { if(_os != null) @@ -103,13 +103,16 @@ public class IncomingBase _compress = compress; - if(_os == null) - { - _os = new BasicStream(instance); - } - else + synchronized(this) { - _os.reset(); + if(_os == null) + { + _os = new BasicStream(instance); + } + else + { + _os.reset(); + } } _connection = connection; |