int
main(int argc, char **argv)
#endif
+{
+ SquidMainSafe(argc, argv);
+}
+
+static int
+SquidMainSafe(int argc, char **argv)
+{
+ try {
+ return SquidMain(argc, argv);
+ }
+ catch (const TextException &e) {
+ // XXX: add TextException::print
+ std::cerr << "dying from unhandled exception: " << e.message << std::endl;
+ }
+ catch (...) {
+ std::cerr << "dying from unhandled exception." << std::endl;
+ }
+ return -1;
+}
+
+static int
+SquidMain(int argc, char **argv)
{
- mode_t oldmask;
#ifdef _SQUID_WIN32_
int WIN32_init_err;