diff options
Diffstat (limited to 'cpp/src/Ice/LoggerUtil.cpp')
-rw-r--r-- | cpp/src/Ice/LoggerUtil.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/cpp/src/Ice/LoggerUtil.cpp b/cpp/src/Ice/LoggerUtil.cpp index 9f1e85accb4..00b79a6845c 100644 --- a/cpp/src/Ice/LoggerUtil.cpp +++ b/cpp/src/Ice/LoggerUtil.cpp @@ -43,18 +43,16 @@ Ice::operator<<(Ice::LoggerOutputBase& out, ios_base& (*val)(ios_base&)) } Ice::LoggerOutputBase& -Ice::operator<<(Ice::LoggerOutputBase& out, const std::exception& ex) +Ice::loggerInsert(Ice::LoggerOutputBase& out, const IceUtil::Exception& ex) { if(IceUtilInternal::printStackTraces) { - const ::IceUtil::Exception* exception = dynamic_cast<const ::IceUtil::Exception*>(&ex); - if(exception) - { - out.__str() << exception->what() << '\n' << exception->ice_stackTrace(); - return out; - } + out.__str() << ex.what() << '\n' << ex.ice_stackTrace(); + } + else + { + out.__str() << ex.what(); } - out.__str() << ex.what(); return out; } |