diff options
author | Benoit Foucher <benoit@zeroc.com> | 2012-10-16 12:15:14 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2012-10-16 12:15:14 +0200 |
commit | 1edb603754a8ab3922a3b9b8c69e0dd3614e0dab (patch) | |
tree | d5d56c91a42187cbd68b0dcf65e95eab68cde22d /cpp/src/Ice/Outgoing.cpp | |
parent | ICE-4856 - Fix multicast for JDK 7 (diff) | |
download | ice-1edb603754a8ab3922a3b9b8c69e0dd3614e0dab.tar.bz2 ice-1edb603754a8ab3922a3b9b8c69e0dd3614e0dab.tar.xz ice-1edb603754a8ab3922a3b9b8c69e0dd3614e0dab.zip |
Fixed IceMX race condition, VC9 build
Diffstat (limited to 'cpp/src/Ice/Outgoing.cpp')
-rw-r--r-- | cpp/src/Ice/Outgoing.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/cpp/src/Ice/Outgoing.cpp b/cpp/src/Ice/Outgoing.cpp index 1f9a290582c..c46b95bad14 100644 --- a/cpp/src/Ice/Outgoing.cpp +++ b/cpp/src/Ice/Outgoing.cpp @@ -593,7 +593,8 @@ IceInternal::BatchOutgoing::invoke() void IceInternal::BatchOutgoing::sent(bool notify) { - _remoteObserver.detach(); + _remoteObserver.detach(); + if(notify) { IceUtil::Monitor<IceUtil::Mutex>::Lock sync(_monitor); @@ -604,6 +605,7 @@ IceInternal::BatchOutgoing::sent(bool notify) { _sent = true; } + // // NOTE: At this point the stack allocated BatchOutgoing object // can be destroyed since the notify() on the monitor will release |