summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/TcpTransceiver.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2008-01-07 10:30:13 +0100
committerBenoit Foucher <benoit@zeroc.com>2008-01-07 10:30:13 +0100
commitd9ce265d9766f0d48c6a6c10491be1f782424a2c (patch)
tree62df7123b09ccbcc617c6024c4b30e1bec45f16b /cpp/src/Ice/TcpTransceiver.cpp
parentFixed IceBox/configuration test failure when run with --protocol=ssl (diff)
downloadice-d9ce265d9766f0d48c6a6c10491be1f782424a2c.tar.bz2
ice-d9ce265d9766f0d48c6a6c10491be1f782424a2c.tar.xz
ice-d9ce265d9766f0d48c6a6c10491be1f782424a2c.zip
Fixed bug 2304
Diffstat (limited to 'cpp/src/Ice/TcpTransceiver.cpp')
-rw-r--r--cpp/src/Ice/TcpTransceiver.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/cpp/src/Ice/TcpTransceiver.cpp b/cpp/src/Ice/TcpTransceiver.cpp
index 09f54e846fa..e7f0ee4acab 100644
--- a/cpp/src/Ice/TcpTransceiver.cpp
+++ b/cpp/src/Ice/TcpTransceiver.cpp
@@ -372,9 +372,22 @@ IceInternal::TcpTransceiver::initialize(int timeout)
}
else if(_state <= StateConnectPending)
{
- doFinishConnect(_fd, timeout);
- _state = StateConnected;
- _desc = fdToString(_fd);
+ try
+ {
+ doFinishConnect(_fd, timeout);
+ _state = StateConnected;
+ _desc = fdToString(_fd);
+ }
+ catch(const Ice::LocalException& ex)
+ {
+ if(_traceLevels->network >= 2)
+ {
+ Trace out(_logger, _traceLevels->networkCat);
+ out << "failed to establish tcp connection\n" << _desc << "\n" << ex;
+ }
+ throw;
+ }
+
if(_traceLevels->network >= 1)
{
Trace out(_logger, _traceLevels->networkCat);