diff options
Diffstat (limited to 'cpp/src/Ice/Incoming.cpp')
-rw-r--r-- | cpp/src/Ice/Incoming.cpp | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/cpp/src/Ice/Incoming.cpp b/cpp/src/Ice/Incoming.cpp index d7d4bd253b0..cddef9f98e4 100644 --- a/cpp/src/Ice/Incoming.cpp +++ b/cpp/src/Ice/Incoming.cpp @@ -296,7 +296,7 @@ IceInternal::Incoming::startOver() // // That's the first startOver, so almost nothing to do // - _inParamPos = _is.i - 6; // 6 bytes for the start of the encaps + _inParamPos = _is.i; } else { @@ -305,9 +305,7 @@ IceInternal::Incoming::startOver() // // Let's rewind _is and clean-up _os // - _is.endReadEncaps(); _is.i = _inParamPos; - _is.startReadEncaps(); if(_response) { @@ -384,8 +382,6 @@ IceInternal::Incoming::invoke(const ServantManagerPtr& servantManager) _current.ctx.insert(_current.ctx.end(), pr); } - _is.startReadEncaps(); - if(_response) { assert(_os.b.size() == headerSize + 4); // Reply status position. @@ -508,13 +504,11 @@ IceInternal::Incoming::invoke(const ServantManagerPtr& servantManager) } catch(const std::exception& ex) { - _is.endReadEncaps(); __handleException(ex); return; } catch(...) { - _is.endReadEncaps(); __handleException(); return; } @@ -524,8 +518,6 @@ IceInternal::Incoming::invoke(const ServantManagerPtr& servantManager) // in the code below are considered fatal, and must propagate to // the caller of this operation. // - - _is.endReadEncaps(); // // DispatchAsync is "pseudo dispatch status", used internally only |