summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES5
-rw-r--r--config/PropertyNames.xml1
-rw-r--r--cpp/src/Freeze/BackgroundSaveEvictorI.cpp12
-rw-r--r--cpp/src/Ice/Application.cpp63
-rw-r--r--cpp/src/Ice/BasicStream.cpp20
-rw-r--r--cpp/src/Ice/ConnectionFactory.cpp10
-rw-r--r--cpp/src/Ice/ConnectionI.cpp6
-rw-r--r--cpp/src/Ice/ConnectionMonitor.cpp3
-rw-r--r--cpp/src/Ice/Incoming.cpp12
-rw-r--r--cpp/src/Ice/Instance.cpp22
-rw-r--r--cpp/src/Ice/LoggerUtil.cpp18
-rw-r--r--cpp/src/Ice/OutgoingAsync.cpp3
-rw-r--r--cpp/src/Ice/PropertyNames.cpp3
-rw-r--r--cpp/src/Ice/PropertyNames.h2
-rw-r--r--cpp/src/Ice/ServantManager.cpp3
-rw-r--r--cpp/src/IceBox/ServiceManagerI.cpp40
-rw-r--r--cpp/src/slice2cpp/Main.cpp8
-rw-r--r--cpp/src/slice2cs/Main.cpp8
-rw-r--r--cpp/src/slice2freeze/Main.cpp8
-rw-r--r--cpp/src/slice2freezej/Main.cpp8
-rw-r--r--cpp/src/slice2html/Main.cpp8
-rw-r--r--cpp/src/slice2java/Main.cpp8
-rw-r--r--cpp/src/slice2php/Main.cpp8
-rw-r--r--cpp/src/slice2py/Main.cpp8
-rw-r--r--cpp/src/slice2rb/Main.cpp8
-rw-r--r--cs/src/Ice/PropertyNames.cs3
-rw-r--r--java/src/IceInternal/PropertyNames.java3
27 files changed, 59 insertions, 242 deletions
diff --git a/CHANGES b/CHANGES
index e83037dab8e..1e59868114f 100644
--- a/CHANGES
+++ b/CHANGES
@@ -227,6 +227,11 @@ C++ Changes
the exception stack trace on platforms/compilers that support it.
Currently this is only supported with the GCC compiler.
+- Added new property, Ice.PrintStackTraces, which controls whether the
+ Ice logger utility classes (Ice::Trace, Ice::Warning, etc) print the
+ stack trace for Ice exceptions. By default it is enabled for debug
+ builds and disabled for release builds.
+
- Removed AMD_Array_Object_ice_invoke class and instead added an
ice_response method to AMD_Object_ice_invoke that uses the array
type.
diff --git a/config/PropertyNames.xml b/config/PropertyNames.xml
index 70662993cf8..b0e1a5c2ab4 100644
--- a/config/PropertyNames.xml
+++ b/config/PropertyNames.xml
@@ -337,6 +337,7 @@ generated from the section label.
<property name="PluginLoadOrder" />
<property name="PrintAdapterReady" />
<property name="PrintProcessId" />
+ <property name="PrintStackTraces" />
<property name="ProgramName" />
<property name="RetryIntervals" />
<property name="ServerId" deprecated="true" />
diff --git a/cpp/src/Freeze/BackgroundSaveEvictorI.cpp b/cpp/src/Freeze/BackgroundSaveEvictorI.cpp
index 0ea4e8cb61a..5209c80147a 100644
--- a/cpp/src/Freeze/BackgroundSaveEvictorI.cpp
+++ b/cpp/src/Freeze/BackgroundSaveEvictorI.cpp
@@ -1237,20 +1237,10 @@ Freeze::BackgroundSaveEvictorI::run()
}
}
}
- catch(const Ice::Exception& ex)
- {
- Error out(_communicator->getLogger());
- out << "Saving thread killed by exception: " << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- out.flush();
- handleFatalError(this, _communicator);
- }
catch(const std::exception& ex)
{
Error out(_communicator->getLogger());
- out << "Saving thread killed by exception: " << ex.what();
+ out << "Saving thread killed by exception: " << ex;
out.flush();
handleFatalError(this, _communicator);
}
diff --git a/cpp/src/Ice/Application.cpp b/cpp/src/Ice/Application.cpp
index 05e86c04732..bf256c66f27 100644
--- a/cpp/src/Ice/Application.cpp
+++ b/cpp/src/Ice/Application.cpp
@@ -148,18 +148,10 @@ destroyOnInterruptCallback(int signal)
assert(_communicator != 0);
_communicator->destroy();
}
- catch(const Ice::Exception& ex)
- {
- Error out(getProcessLogger());
- out << "(while destroying in response to signal " << signal << "): " << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- }
catch(const std::exception& ex)
{
Error out(getProcessLogger());
- out << "(while destroying in response to signal " << signal << "): " << ex.what();
+ out << "(while destroying in response to signal " << signal << "): " << ex;
}
catch(const std::string& msg)
{
@@ -211,18 +203,10 @@ shutdownOnInterruptCallback(int signal)
assert(_communicator != 0);
_communicator->shutdown();
}
- catch(const Ice::Exception& ex)
- {
- Error out(getProcessLogger());
- out << "(while shutting down in response to signal " << signal << "): std::exception: " << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- }
catch(const std::exception& ex)
{
Error out(getProcessLogger());
- out << "(while shutting down in response to signal " << signal << "): std::exception: " << ex.what();
+ out << "(while shutting down in response to signal " << signal << "): std::exception: " << ex;
}
catch(const std::string& msg)
{
@@ -271,18 +255,10 @@ callbackOnInterruptCallback(int signal)
assert(_application != 0);
_application->interruptCallback(signal);
}
- catch(const Ice::Exception& ex)
- {
- Error out(getProcessLogger());
- out << "(while interrupting in response to signal " << signal << "): std::exception: " << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- }
catch(const std::exception& ex)
{
Error out(getProcessLogger());
- out << "(while interrupting in response to signal " << signal << "): std::exception: " << ex.what();
+ out << "(while interrupting in response to signal " << signal << "): std::exception: " << ex;
}
catch(const std::string& msg)
{
@@ -342,19 +318,10 @@ Ice::Application::main(int argc, char* argv[], const char* configFile)
initData.properties = createProperties();
initData.properties->load(configFile);
}
- catch(const Ice::Exception& ex)
- {
- Error out(getProcessLogger());
- out << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
Error out(getProcessLogger());
- out << ex.what();
+ out << ex;
return EXIT_FAILURE;
}
catch(...)
@@ -657,19 +624,10 @@ Ice::Application::mainInternal(int argc, char* argv[], const InitializationData&
status = run(argc, argv);
}
- catch(const Ice::Exception& ex)
- {
- Error out(getProcessLogger());
- out << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- status = EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
Error out(getProcessLogger());
- out << ex.what();
+ out << ex;
status = EXIT_FAILURE;
}
catch(const std::string& msg)
@@ -729,19 +687,10 @@ Ice::Application::mainInternal(int argc, char* argv[], const InitializationData&
{
_communicator->destroy();
}
- catch(const Ice::Exception& ex)
- {
- Error out(getProcessLogger());
- out << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- status = EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
Error out(getProcessLogger());
- out << ex.what();
+ out << ex;
status = EXIT_FAILURE;
}
catch(...)
diff --git a/cpp/src/Ice/BasicStream.cpp b/cpp/src/Ice/BasicStream.cpp
index 779cc2db7f4..88a48b94236 100644
--- a/cpp/src/Ice/BasicStream.cpp
+++ b/cpp/src/Ice/BasicStream.cpp
@@ -2089,18 +2089,10 @@ IceInternal::BasicStream::readPendingObjects()
{
(*p)->ice_postUnmarshal();
}
- catch(const Ice::Exception& ex)
- {
- Ice::Warning out(_instance->initializationData().logger);
- out << "Ice::Exception raised by ice_postUnmarshal:\n" << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- }
catch(const std::exception& ex)
{
Ice::Warning out(_instance->initializationData().logger);
- out << "std::exception raised by ice_postUnmarshal:\n" << ex.what();
+ out << "std::exception raised by ice_postUnmarshal:\n" << ex;
}
catch(...)
{
@@ -2148,18 +2140,10 @@ IceInternal::BasicStream::writeInstance(const ObjectPtr& v, Int index)
{
v->ice_preMarshal();
}
- catch(const Ice::Exception& ex)
- {
- Ice::Warning out(_instance->initializationData().logger);
- out << "Ice::Exception raised by ice_preMarshal:\n" << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- }
catch(const std::exception& ex)
{
Ice::Warning out(_instance->initializationData().logger);
- out << "std::exception raised by ice_preMarshal:\n" << ex.what();
+ out << "std::exception raised by ice_preMarshal:\n" << ex;
}
catch(...)
{
diff --git a/cpp/src/Ice/ConnectionFactory.cpp b/cpp/src/Ice/ConnectionFactory.cpp
index 38b922c795f..d2af952f75c 100644
--- a/cpp/src/Ice/ConnectionFactory.cpp
+++ b/cpp/src/Ice/ConnectionFactory.cpp
@@ -1431,10 +1431,6 @@ IceInternal::IncomingConnectionFactory::message(ThreadPoolCurrent& current)
{
Warning out(_instance->initializationData().logger);
out << "connection exception:\n" << ex << '\n' << _acceptor->toString();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
-
}
return;
}
@@ -1460,9 +1456,6 @@ IceInternal::IncomingConnectionFactory::message(ThreadPoolCurrent& current)
{
Warning out(_instance->initializationData().logger);
out << "connection exception:\n" << ex << '\n' << _acceptor->toString();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
return;
}
@@ -1537,9 +1530,6 @@ IceInternal::IncomingConnectionFactory::connectionStartFailed(const Ice::Connect
{
Warning out(_instance->initializationData().logger);
out << "connection exception:\n" << ex << '\n' << _acceptor->toString();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
//
diff --git a/cpp/src/Ice/ConnectionI.cpp b/cpp/src/Ice/ConnectionI.cpp
index 64137e7953c..bea6f4ed5f5 100644
--- a/cpp/src/Ice/ConnectionI.cpp
+++ b/cpp/src/Ice/ConnectionI.cpp
@@ -1618,9 +1618,6 @@ Ice::ConnectionI::setState(State state, const LocalException& ex)
{
Warning out(_logger);
out << "connection exception:\n" << *_exception.get() << '\n' << _desc;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
}
}
@@ -1753,9 +1750,6 @@ Ice::ConnectionI::setState(State state)
{
Error out(_logger);
out << "unexpected connection exception:\n" << ex << '\n' << _desc;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
//
diff --git a/cpp/src/Ice/ConnectionMonitor.cpp b/cpp/src/Ice/ConnectionMonitor.cpp
index 935e38f785e..6933ab3d401 100644
--- a/cpp/src/Ice/ConnectionMonitor.cpp
+++ b/cpp/src/Ice/ConnectionMonitor.cpp
@@ -105,9 +105,6 @@ IceInternal::ConnectionMonitor::runTimerTask()
Error out(_instance->initializationData().logger);
out << "exception in connection monitor:\n" << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
catch(...)
{
diff --git a/cpp/src/Ice/Incoming.cpp b/cpp/src/Ice/Incoming.cpp
index d907f0da0ac..f26467afe58 100644
--- a/cpp/src/Ice/Incoming.cpp
+++ b/cpp/src/Ice/Incoming.cpp
@@ -75,12 +75,12 @@ IceInternal::IncomingBase::adopt(IncomingBase& other)
void
IceInternal::IncomingBase::__warning(const Exception& ex) const
{
- ostringstream str;
- str << ex;
-#ifdef __GNUC__
- str << "\n" << ex.ice_stackTrace();
-#endif
- __warning(str.str());
+ Warning out(_os.instance()->initializationData().logger);
+
+ out << "dispatch exception: " << ex;
+ out << "\nidentity: " << _os.instance()->identityToString(_current.id);
+ out << "\nfacet: " << IceUtilInternal::escapeString(_current.facet, "");
+ out << "\noperation: " << _current.operation;
}
void
diff --git a/cpp/src/Ice/Instance.cpp b/cpp/src/Ice/Instance.cpp
index 1f9e3fe3858..3bd69893744 100644
--- a/cpp/src/Ice/Instance.cpp
+++ b/cpp/src/Ice/Instance.cpp
@@ -64,6 +64,13 @@ extern bool ICE_DECLSPEC_IMPORT nullHandleAbort;
}
+namespace IceInternal
+{
+
+extern bool printStackTraces;
+
+};
+
namespace
{
@@ -824,6 +831,15 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
{
IceUtil::nullHandleAbort = true;
}
+
+#ifdef NDEBUG
+ if(_initData.properties->getPropertyAsIntWithDefault("Ice.PrintStackTraces", 0) > 0)
+#else
+ if(_initData.properties->getPropertyAsIntWithDefault("Ice.PrintStackTraces", 1) > 0)
+#endif
+ {
+ printStackTraces = true;
+ }
#ifndef _WIN32
string newUser = _initData.properties->getProperty("Ice.ChangeUser");
@@ -1005,9 +1021,6 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
{
Error out(_initData.logger);
out << "cannot create thread for timer:\n" << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
throw;
}
@@ -1019,9 +1032,6 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
{
Error out(_initData.logger);
out << "cannot create thread for endpoint host resolver:\n" << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
throw;
}
diff --git a/cpp/src/Ice/LoggerUtil.cpp b/cpp/src/Ice/LoggerUtil.cpp
index b1cec4f8fc4..2b92afe037a 100644
--- a/cpp/src/Ice/LoggerUtil.cpp
+++ b/cpp/src/Ice/LoggerUtil.cpp
@@ -16,6 +16,13 @@
using namespace std;
+namespace IceInternal
+{
+
+bool printStackTraces = false;
+
+}
+
ostringstream&
Ice::LoggerOutputBase::__str()
{
@@ -33,11 +40,14 @@ Ice::LoggerOutputBase&
Ice::operator<<(Ice::LoggerOutputBase& out, const std::exception& ex)
{
#ifdef __GNUC__
- const ::IceUtil::Exception* exception = dynamic_cast<const ::IceUtil::Exception*>(&ex);
- if(exception)
+ if(IceInternal::printStackTraces)
{
- out.__str() << exception->what() << '\n' << exception->ice_stackTrace();
- return out;
+ const ::IceUtil::Exception* exception = dynamic_cast<const ::IceUtil::Exception*>(&ex);
+ if(exception)
+ {
+ out.__str() << exception->what() << '\n' << exception->ice_stackTrace();
+ return out;
+ }
}
#endif
out.__str() << ex.what();
diff --git a/cpp/src/Ice/OutgoingAsync.cpp b/cpp/src/Ice/OutgoingAsync.cpp
index e72d0458603..2c6ad47d336 100644
--- a/cpp/src/Ice/OutgoingAsync.cpp
+++ b/cpp/src/Ice/OutgoingAsync.cpp
@@ -194,9 +194,6 @@ IceInternal::OutgoingAsyncMessageCallback::__warning(const InstancePtr& instance
if(ex)
{
out << "Ice::Exception raised by AMI callback:\n" << *ex;
-#ifdef __GNUC__
- out << "\n" << ex->ice_stackTrace();
-#endif
}
else
{
diff --git a/cpp/src/Ice/PropertyNames.cpp b/cpp/src/Ice/PropertyNames.cpp
index f297cd7ac9a..79fa4f0e4c6 100644
--- a/cpp/src/Ice/PropertyNames.cpp
+++ b/cpp/src/Ice/PropertyNames.cpp
@@ -8,7 +8,7 @@
// **********************************************************************
//
-// Generated by makeprops.py from file ./config/PropertyNames.xml, Tue Aug 11 09:12:32 2009
+// Generated by makeprops.py from file ../config/PropertyNames.xml, Fri Aug 21 15:32:18 2009
// IMPORTANT: Do not edit this file -- any edits made here will be lost!
@@ -88,6 +88,7 @@ const IceInternal::Property IcePropsData[] =
IceInternal::Property("Ice.PluginLoadOrder", false, 0),
IceInternal::Property("Ice.PrintAdapterReady", false, 0),
IceInternal::Property("Ice.PrintProcessId", false, 0),
+ IceInternal::Property("Ice.PrintStackTraces", false, 0),
IceInternal::Property("Ice.ProgramName", false, 0),
IceInternal::Property("Ice.RetryIntervals", false, 0),
IceInternal::Property("Ice.ServerId", true, 0),
diff --git a/cpp/src/Ice/PropertyNames.h b/cpp/src/Ice/PropertyNames.h
index 3c9417577f6..3e8a208e830 100644
--- a/cpp/src/Ice/PropertyNames.h
+++ b/cpp/src/Ice/PropertyNames.h
@@ -8,7 +8,7 @@
// **********************************************************************
//
-// Generated by makeprops.py from file ./config/PropertyNames.xml, Tue Aug 11 09:12:32 2009
+// Generated by makeprops.py from file ../config/PropertyNames.xml, Fri Aug 21 15:32:18 2009
// IMPORTANT: Do not edit this file -- any edits made here will be lost!
diff --git a/cpp/src/Ice/ServantManager.cpp b/cpp/src/Ice/ServantManager.cpp
index d48173717df..146219aabc0 100644
--- a/cpp/src/Ice/ServantManager.cpp
+++ b/cpp/src/Ice/ServantManager.cpp
@@ -466,9 +466,6 @@ IceInternal::ServantManager::destroy()
<< "object adapter: `" << _adapterName << "'\n"
<< "locator category: `" << p->first << "'\n"
<< ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
catch(...)
{
diff --git a/cpp/src/IceBox/ServiceManagerI.cpp b/cpp/src/IceBox/ServiceManagerI.cpp
index c5b59c43b7f..7833bc9e956 100644
--- a/cpp/src/IceBox/ServiceManagerI.cpp
+++ b/cpp/src/IceBox/ServiceManagerI.cpp
@@ -190,9 +190,6 @@ IceBox::ServiceManagerI::startService(const string& name, const Current&)
Warning out(_logger);
out << "ServiceManager: exception in start for service " << info.name << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
catch(...)
{
@@ -271,9 +268,6 @@ IceBox::ServiceManagerI::stopService(const string& name, const Current&)
Warning out(_logger);
out << "ServiceManager: exception in stop for service " << info.name << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
catch(...)
{
@@ -551,9 +545,6 @@ IceBox::ServiceManagerI::start()
{
Error out(_logger);
out << ex.reason;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
stopAll();
return false;
}
@@ -561,9 +552,6 @@ IceBox::ServiceManagerI::start()
{
Error out(_logger);
out << "ServiceManager: " << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
stopAll();
return false;
}
@@ -713,9 +701,6 @@ IceBox::ServiceManagerI::start(const string& service, const string& entryPoint,
Warning out(_logger);
out << "ServiceManager: exception in shutting down communicator for service " << service << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
try
@@ -728,9 +713,6 @@ IceBox::ServiceManagerI::start(const string& service, const string& entryPoint,
Warning out(_logger);
out << "ServiceManager: exception in shutting down communicator for service " << service << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
}
throw;
@@ -796,9 +778,6 @@ IceBox::ServiceManagerI::stopAll()
Warning out(_logger);
out << "ServiceManager: exception in stop for service " << info.name << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
catch(...)
{
@@ -840,9 +819,6 @@ IceBox::ServiceManagerI::stopAll()
Warning out(_logger);
out << "ServiceManager: exception in stop for service " << info.name << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
}
@@ -880,9 +856,6 @@ IceBox::ServiceManagerI::stopAll()
Warning out(_logger);
out << "ServiceManager: exception in stop for service " << info.name << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
}
@@ -895,9 +868,6 @@ IceBox::ServiceManagerI::stopAll()
Warning out(_logger);
out << "ServiceManager: exception in stop for service " << info.name << ":\n";
out << ex;
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
}
catch(...)
{
@@ -912,18 +882,10 @@ IceBox::ServiceManagerI::stopAll()
{
_sharedCommunicator->destroy();
}
- catch(const Ice::Exception& ex)
- {
- Warning out(_logger);
- out << "ServiceManager: unknown exception while destroying shared communicator:\n" << ex.what();
-#ifdef __GNUC__
- out << "\n" << ex.ice_stackTrace();
-#endif
- }
catch(const std::exception& ex)
{
Warning out(_logger);
- out << "ServiceManager: unknown exception while destroying shared communicator:\n" << ex.what();
+ out << "ServiceManager: unknown exception while destroying shared communicator:\n" << ex;
}
_sharedCommunicator = 0;
}
diff --git a/cpp/src/slice2cpp/Main.cpp b/cpp/src/slice2cpp/Main.cpp
index b1817d5c7a9..9e75afaf7c2 100644
--- a/cpp/src/slice2cpp/Main.cpp
+++ b/cpp/src/slice2cpp/Main.cpp
@@ -304,14 +304,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2cs/Main.cpp b/cpp/src/slice2cs/Main.cpp
index 2941e5ba63c..773242e30b2 100644
--- a/cpp/src/slice2cs/Main.cpp
+++ b/cpp/src/slice2cs/Main.cpp
@@ -313,14 +313,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2freeze/Main.cpp b/cpp/src/slice2freeze/Main.cpp
index a49cbe64a4b..d78c3cd9865 100644
--- a/cpp/src/slice2freeze/Main.cpp
+++ b/cpp/src/slice2freeze/Main.cpp
@@ -2055,14 +2055,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2freezej/Main.cpp b/cpp/src/slice2freezej/Main.cpp
index 32a8ee1057c..5c55269ad6e 100644
--- a/cpp/src/slice2freezej/Main.cpp
+++ b/cpp/src/slice2freezej/Main.cpp
@@ -1733,14 +1733,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2html/Main.cpp b/cpp/src/slice2html/Main.cpp
index a02a532f780..403602f217b 100644
--- a/cpp/src/slice2html/Main.cpp
+++ b/cpp/src/slice2html/Main.cpp
@@ -314,14 +314,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2java/Main.cpp b/cpp/src/slice2java/Main.cpp
index 2c9a44da489..9488e64d79c 100644
--- a/cpp/src/slice2java/Main.cpp
+++ b/cpp/src/slice2java/Main.cpp
@@ -398,14 +398,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2php/Main.cpp b/cpp/src/slice2php/Main.cpp
index 6c664c5b576..a51a7e17ef6 100644
--- a/cpp/src/slice2php/Main.cpp
+++ b/cpp/src/slice2php/Main.cpp
@@ -1714,14 +1714,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2py/Main.cpp b/cpp/src/slice2py/Main.cpp
index 8cde80b8a07..6f2d99e4584 100644
--- a/cpp/src/slice2py/Main.cpp
+++ b/cpp/src/slice2py/Main.cpp
@@ -632,14 +632,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cpp/src/slice2rb/Main.cpp b/cpp/src/slice2rb/Main.cpp
index 6417c7523cf..12780f394a8 100644
--- a/cpp/src/slice2rb/Main.cpp
+++ b/cpp/src/slice2rb/Main.cpp
@@ -291,14 +291,6 @@ main(int argc, char* argv[])
{
return compile(argc, argv);
}
- catch(const IceUtil::Exception& ex)
- {
- getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
-#ifdef __GNUC__
- getErrorStream() << ex.ice_stackTrace() << endl;
-#endif
- return EXIT_FAILURE;
- }
catch(const std::exception& ex)
{
getErrorStream() << argv[0] << ": error:" << ex.what() << endl;
diff --git a/cs/src/Ice/PropertyNames.cs b/cs/src/Ice/PropertyNames.cs
index 40dadfc283d..f00bf0b45f6 100644
--- a/cs/src/Ice/PropertyNames.cs
+++ b/cs/src/Ice/PropertyNames.cs
@@ -8,7 +8,7 @@
// **********************************************************************
//
-// Generated by makeprops.py from file ./config/PropertyNames.xml, Tue Aug 11 09:12:32 2009
+// Generated by makeprops.py from file ../config/PropertyNames.xml, Fri Aug 21 15:32:18 2009
// IMPORTANT: Do not edit this file -- any edits made here will be lost!
@@ -90,6 +90,7 @@ namespace IceInternal
new Property(@"^Ice\.PluginLoadOrder$", false, null),
new Property(@"^Ice\.PrintAdapterReady$", false, null),
new Property(@"^Ice\.PrintProcessId$", false, null),
+ new Property(@"^Ice\.PrintStackTraces$", false, null),
new Property(@"^Ice\.ProgramName$", false, null),
new Property(@"^Ice\.RetryIntervals$", false, null),
new Property(@"^Ice\.ServerId$", true, null),
diff --git a/java/src/IceInternal/PropertyNames.java b/java/src/IceInternal/PropertyNames.java
index 62ecfb4d287..90ddb72cd67 100644
--- a/java/src/IceInternal/PropertyNames.java
+++ b/java/src/IceInternal/PropertyNames.java
@@ -8,7 +8,7 @@
// **********************************************************************
//
-// Generated by makeprops.py from file ./config/PropertyNames.xml, Tue Aug 11 09:12:32 2009
+// Generated by makeprops.py from file ../config/PropertyNames.xml, Fri Aug 21 15:32:18 2009
// IMPORTANT: Do not edit this file -- any edits made here will be lost!
@@ -90,6 +90,7 @@ public final class PropertyNames
new Property("Ice\\.PluginLoadOrder", false, null),
new Property("Ice\\.PrintAdapterReady", false, null),
new Property("Ice\\.PrintProcessId", false, null),
+ new Property("Ice\\.PrintStackTraces", false, null),
new Property("Ice\\.ProgramName", false, null),
new Property("Ice\\.RetryIntervals", false, null),
new Property("Ice\\.ServerId", true, null),