diff options
author | Bastien Nocera <hadess@hadess.net> | 2013-06-12 13:34:24 +0200 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2013-06-12 15:30:57 +0200 |
commit | 487ab6cf4fa7fcb6d0921a4d53bee6288fe783ff (patch) | |
tree | 2481e06bc0de8677e9fa71ac02b90e022f3bce68 /.gitignore | |
parent | 7e67bd5a5a7e254cfd7650d2a35471720d6db528 (diff) | |
download | gnome-settings-daemon-487ab6cf4fa7fcb6d0921a4d53bee6288fe783ff.tar.gz |
power: Fix non-transient notifications sticking around
When replacing an existing notification with a more up-to-date one,
we were closing the existing notification, and creating a new one in its
place. As, to clean up when a notification is dismissed by hand, we hook
up to the "closed" signal, we ended up zero'ing the pointer to the just
shown notification and making it impossible to remove later.
eg.
- 1st notification created
- updated state comes in
- notify_close() called
- notification pointer is replaced with newer notification
- main loop returns
- "closed" signal is received for the 1st notification (ah!)
- original notification is unref'ed, and its location is zero'd
by weak pointer call.
That location is that of the new notification as well.
https://bugzilla.gnome.org/show_bug.cgi?id=702047
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions