summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2011-10-05 11:11:29 (GMT)
committerKevin Smith <git@kismith.co.uk>2011-10-05 11:11:29 (GMT)
commit8159071adb232b68c2ce79479145fbcd04979245 (patch)
tree9282fc76499719c18fa9c9e892535d2f46030b43 /Swiften
parent4c942cbb0b76383bfad10b3677a75a52f9193cf7 (diff)
downloadswift-contrib-8159071adb232b68c2ce79479145fbcd04979245.zip
swift-contrib-8159071adb232b68c2ce79479145fbcd04979245.tar.bz2
Don't crash with label item without a label
Diffstat (limited to 'Swiften')
-rw-r--r--Swiften/Elements/SecurityLabel.h1
-rw-r--r--Swiften/Elements/SecurityLabelsCatalog.h1
-rw-r--r--Swiften/EventLoop/EventLoop.cpp3
3 files changed, 5 insertions, 0 deletions
diff --git a/Swiften/Elements/SecurityLabel.h b/Swiften/Elements/SecurityLabel.h
index 0487977..a1714c8 100644
--- a/Swiften/Elements/SecurityLabel.h
+++ b/Swiften/Elements/SecurityLabel.h
@@ -14,6 +14,7 @@
namespace Swift {
class SecurityLabel : public Payload {
public:
+ typedef boost::shared_ptr<SecurityLabel> ref;
SecurityLabel() {}
const std::string& getDisplayMarking() const { return displayMarking_; }
diff --git a/Swiften/Elements/SecurityLabelsCatalog.h b/Swiften/Elements/SecurityLabelsCatalog.h
index 0f40c13..b9419a9 100644
--- a/Swiften/Elements/SecurityLabelsCatalog.h
+++ b/Swiften/Elements/SecurityLabelsCatalog.h
@@ -17,6 +17,7 @@
namespace Swift {
class SecurityLabelsCatalog : public Payload {
public:
+ typedef boost::shared_ptr<SecurityLabelsCatalog> ref;
class Item {
public:
Item() : default_(false) {}
diff --git a/Swiften/EventLoop/EventLoop.cpp b/Swiften/EventLoop/EventLoop.cpp
index 2b8f00d..afb6858 100644
--- a/Swiften/EventLoop/EventLoop.cpp
+++ b/Swiften/EventLoop/EventLoop.cpp
@@ -24,6 +24,9 @@ inline void invokeCallback(const Event& event) {
catch (const std::exception& e) {
std::cerr << "Uncaught exception in event loop: " << e.what() << std::endl;
}
+ catch (...) {
+ std::cerr << "Uncaught non-exception in event loop" << std::endl;
+ }
}
EventLoop::EventLoop() : nextEventID_(0), handlingEvents_(false) {