diff options
author | Kevin Smith <git@kismith.co.uk> | 2012-03-14 13:12:24 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2012-03-14 13:24:44 (GMT) |
commit | f90fce80371ac12d97c6adc65a9437e4a3a7b268 (patch) | |
tree | 9e277bc46ae0a0cf3e54aa252d1a5c630e35ec83 /SwifTools/Notifier/SnarlNotifier.h | |
parent | 1089374439fa6073800679817198e3c39283113e (diff) | |
download | swift-contrib-f90fce80371ac12d97c6adc65a9437e4a3a7b268.zip swift-contrib-f90fce80371ac12d97c6adc65a9437e4a3a7b268.tar.bz2 |
Dispose of notification callbacks once the account signs out.
Fixes segfaults caused by clicking notifications after
the handlers had been freed.
Does not fix GrowlNotifier, which needs fixing later.
Diffstat (limited to 'SwifTools/Notifier/SnarlNotifier.h')
-rw-r--r-- | SwifTools/Notifier/SnarlNotifier.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/SwifTools/Notifier/SnarlNotifier.h b/SwifTools/Notifier/SnarlNotifier.h index c96dfa6..eb0eb5a 100644 --- a/SwifTools/Notifier/SnarlNotifier.h +++ b/SwifTools/Notifier/SnarlNotifier.h @@ -22,6 +22,10 @@ namespace Swift { virtual void showMessage(Type type, const std::string& subject, const std::string& description, const boost::filesystem::path& picture, boost::function<void()> callback); virtual bool isAvailable() const; + virtual void purgeCallbacks() { + notifications.clear(); + } + private: void handleMessageReceived(MSG* message); |