summaryrefslogtreecommitdiff
path: root/src/xmpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/xmpp')
-rw-r--r--src/xmpp/xmpp_parser.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/xmpp/xmpp_parser.cpp b/src/xmpp/xmpp_parser.cpp
index 867648b..536d9da 100644
--- a/src/xmpp/xmpp_parser.cpp
+++ b/src/xmpp/xmpp_parser.cpp
@@ -131,7 +131,13 @@ void XmppParser::char_data(const XML_Char* data, int len)
void XmppParser::stanza_event(const Stanza& stanza) const
{
for (const auto& callback: this->stanza_callbacks)
- callback(stanza);
+ {
+ try {
+ callback(stanza);
+ } catch (const std::exception& e) {
+ log_debug("Unhandled exception: " << e.what());
+ }
+ }
}
void XmppParser::stream_open_event(const XmlNode& node) const