summaryrefslogtreecommitdiff
path: root/src/PixbufCache.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/PixbufCache.vala')
-rw-r--r--src/PixbufCache.vala12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/PixbufCache.vala b/src/PixbufCache.vala
index 8b8f276..0708f5e 100644
--- a/src/PixbufCache.vala
+++ b/src/PixbufCache.vala
@@ -265,6 +265,10 @@ public class PixbufCache : Object {
return;
}
+#if TRACE_PIXBUF_CACHE
+ debug("%s %s fetched into pixbuf cache", type.to_string(), job.photo.to_string());
+#endif
+
encache(job.photo, job.pixbuf);
// fire signal
@@ -279,16 +283,14 @@ public class PixbufCache : Object {
Photo photo = (Photo) object;
if (in_progress.has_key(photo)) {
- // Load is in progress, must cancel.
+ // Load is in progress, must cancel, but consider in-cache (since it was decached
+ // before being put into progress)
in_progress.get(photo).cancel();
in_progress.unset(photo);
+ } else if (!cache.has_key(photo)) {
continue;
}
- // only interested if in this cache
- if (!cache.has_key(photo))
- continue;
-
decache(photo);
#if TRACE_PIXBUF_CACHE