diff options
Diffstat (limited to 'cpp/src/Ice/DispatchInterceptor.cpp')
-rw-r--r-- | cpp/src/Ice/DispatchInterceptor.cpp | 26 |
1 files changed, 3 insertions, 23 deletions
diff --git a/cpp/src/Ice/DispatchInterceptor.cpp b/cpp/src/Ice/DispatchInterceptor.cpp index 4b320ff9a53..b9d87096848 100644 --- a/cpp/src/Ice/DispatchInterceptor.cpp +++ b/cpp/src/Ice/DispatchInterceptor.cpp @@ -14,36 +14,16 @@ using namespace Ice; using namespace IceInternal; -DispatchStatus +bool Ice::DispatchInterceptor::__dispatch(IceInternal::Incoming& in, const Current& /*current*/) { try { IncomingRequest request(in); - DispatchStatus status = dispatch(request); - if(status != DispatchAsync) - { - // - // Make sure 'in' owns the connection etc. - // - in.killAsync(); - } - return status; + return dispatch(request); } catch(const ResponseSentException&) { - return DispatchAsync; - } - catch(...) - { - try - { - in.killAsync(); - } - catch(const ResponseSentException&) - { - return DispatchAsync; - } - throw; + return false; } } |