From 9a3f0bc25aee397b963bafa45282357b7da5ff87 Mon Sep 17 00:00:00 2001 From: wmayer Date: Mon, 30 Jul 2018 12:25:54 +0200 Subject: [PATCH] improve exception handling in ViewProvider::eventCallback --- src/Gui/ViewProvider.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/Gui/ViewProvider.cpp b/src/Gui/ViewProvider.cpp index b76e34eedf..a174b389f8 100644 --- a/src/Gui/ViewProvider.cpp +++ b/src/Gui/ViewProvider.cpp @@ -211,13 +211,22 @@ void ViewProvider::eventCallback(void * ud, SoEventCallback * node) } } catch (const Base::Exception& e) { - Base::Console().Error("Unhandled exception in ViewProvider::eventCallback: %s\n", e.what()); + Base::Console().Error("Unhandled exception in ViewProvider::eventCallback: %s\n" + "(Event type: %s, object type: %s)\n" + , e.what(), ev->getTypeId().getName().getString() + , self->getTypeId().getName()); } catch (const std::exception& e) { - Base::Console().Error("Unhandled std exception in ViewProvider::eventCallback: %s\n", e.what()); + Base::Console().Error("Unhandled std exception in ViewProvider::eventCallback: %s\n" + "(Event type: %s, object type: %s)\n" + , e.what(), ev->getTypeId().getName().getString() + , self->getTypeId().getName()); } catch (...) { - Base::Console().Error("Unhandled unknown C++ exception in ViewProvider::eventCallback"); + Base::Console().Error("Unhandled unknown C++ exception in ViewProvider::eventCallback" + " (Event type: %s, object type: %s)\n" + , ev->getTypeId().getName().getString() + , self->getTypeId().getName()); } }