diff options
author | Dwayne Boone <dwayne@zeroc.com> | 2009-03-02 15:23:53 -0330 |
---|---|---|
committer | Dwayne Boone <dwayne@zeroc.com> | 2009-03-02 15:23:53 -0330 |
commit | 8b15e6ba73a45b5be5064cb2f866ad0654d7af18 (patch) | |
tree | 9ee591d38fb7725ab2e6ef637b46b54d1394ef33 /cpp/src/Ice/IncomingAsync.cpp | |
parent | Fix 3755 - demo/Ice/callback has context parameter? (diff) | |
download | ice-8b15e6ba73a45b5be5064cb2f866ad0654d7af18.tar.bz2 ice-8b15e6ba73a45b5be5064cb2f866ad0654d7af18.tar.xz ice-8b15e6ba73a45b5be5064cb2f866ad0654d7af18.zip |
C++Builder 2009 port
Diffstat (limited to 'cpp/src/Ice/IncomingAsync.cpp')
-rw-r--r-- | cpp/src/Ice/IncomingAsync.cpp | 53 |
1 files changed, 3 insertions, 50 deletions
diff --git a/cpp/src/Ice/IncomingAsync.cpp b/cpp/src/Ice/IncomingAsync.cpp index edc9b64cf3b..5324af0508b 100644 --- a/cpp/src/Ice/IncomingAsync.cpp +++ b/cpp/src/Ice/IncomingAsync.cpp @@ -64,7 +64,7 @@ IceInternal::IncomingAsync::__response(bool ok) { try { - if(!__servantLocatorFinished()) + if(_locator && !__servantLocatorFinished()) { return; } @@ -100,7 +100,7 @@ IceInternal::IncomingAsync::__exception(const std::exception& exc) { try { - if(!__servantLocatorFinished()) + if(_locator && !__servantLocatorFinished()) { return; } @@ -118,7 +118,7 @@ IceInternal::IncomingAsync::__exception() { try { - if(!__servantLocatorFinished()) + if(_locator && !__servantLocatorFinished()) { return; } @@ -132,53 +132,6 @@ IceInternal::IncomingAsync::__exception() } bool -IceInternal::IncomingAsync::__servantLocatorFinished() -{ - try - { - if(_locator && _servant) - { - try - { - _locator->finished(_current, _servant, _cookie); - } - catch(const UserException& ex) - { - // - // The operation may have already marshaled a reply; we must overwrite that reply. - // - if(_response) - { - _os.endWriteEncaps(); - _os.b.resize(headerSize + 4); // Reply status position. - _os.write(replyUserException); - _os.startWriteEncaps(); - _os.write(ex); - _os.endWriteEncaps(); - _connection->sendResponse(&_os, _compress); - } - else - { - _connection->sendNoResponse(); - } - return false; - } - } - return true; - } - catch(const std::exception& ex) - { - __handleException(ex); - return false; - } - catch(...) - { - __handleException(); - return false; - } -} - -bool IceInternal::IncomingAsync::__validateResponse(bool ok) { if(!_retriable) |