gnome-shell/js
Ray Strode 55d1c7e2ab background: fix cancellable issue
If we have the following sequence:

    cache.getImageContent({ filename: "foo", cancellable: cancellable1 });
    cache.getImageContent({ filename: "foo", cancellable: cancellable2 });
    cancellable1.cancel();

Then the second load will complete with "null" as its content, even though
it was never cancelled, and we'll see a blank image. Meanwhile, since the
second load simply appends to the list of callers for the second load,
cancellable2 does absolutely nothing: cancelling it won't stop the load,
and it will still receive onFinished handling.

To prevent this from happening, give the actual load operation its own
Gio.Cancellable, which is "ref-counted" -- only cancel it when all the other
possible callers cancel.

Based on work from Jasper St. Pierre <jstpierre@macheye.net>

https://bugzilla.gnome.org/show_bug.cgi?id=722149
2014-03-12 12:15:43 -04:00
..
extensionPrefs Synchronize shell startup 2013-11-04 11:50:20 -05:00
gdm loginDialog: Defer loading user list until needed 2014-03-08 00:29:11 +01:00
misc make NetworkManager optional 2014-02-11 18:04:44 -05:00
perf perf: Update to latest overlay changes 2012-08-20 20:40:01 +02:00
ui background: fix cancellable issue 2014-03-12 12:15:43 -04:00
js-resources.gresource.xml Add indicator for location service being used 2014-01-28 18:39:12 +00:00
Makefile.am make NetworkManager optional 2014-02-11 18:04:44 -05:00