Review Request 129146: Fix emitting close when an event has no actions

David Edmundson david at davidedmundson.co.uk
Thu Oct 13 14:30:46 UTC 2016


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/129146/
-----------------------------------------------------------

(Updated Oct. 13, 2016, 2:30 p.m.)


Review request for KDE Frameworks.


Repository: knotifications


Description
-------

KNotificatitionManager::self() has an early check if a notification has
no actions. If it has no actions it tries to close the notification
early. However it's dereferencing an object that it has not referenced,
sending the ref count to -1, a corrupt state that is not handled
gracefully in KNotification, and we don't ever close the notification.

By referencing and dereferencing we're still calling the cleanup in
KNotification (if applicable) but without sending the ref count negative.

This fixes ksmserver waiting for the logout sound to play; which
currently never emits close, as the default setup has no logout sound.


Diffs (updated)
-----

  autotests/knotification_test.cpp 5d063f1a19d7f5e4d8c77d7e6301e81223401b08 
  src/knotification.cpp 352cf496faef7a120c3d5c805cf6ffb324292a0c 
  src/knotificationmanager.cpp c315db9a3f17771d4095cfdc7982475949213a1c 

Diff: https://git.reviewboard.kde.org/r/129146/diff/


Testing
-------

Autotest that used to fail included


Thanks,

David Edmundson

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20161013/f6fb6924/attachment-0001.html>


More information about the Kde-frameworks-devel mailing list