]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-pixbuf-cache.c
Copy-paste g_file_set_contents to keep compatibility with gtk 2.6
[evince.git] / shell / ev-pixbuf-cache.c
index 7ada246a656a799279b6af4780145174065d10a8..36eca68a679c9032be498146981db55eca4402b6 100644 (file)
@@ -700,6 +700,24 @@ ev_pixbuf_cache_get_text_mapping      (EvPixbufCache *pixbuf_cache,
        return job_info->text_mapping;
 }
 
        return job_info->text_mapping;
 }
 
+/* Clears the cache of jobs and pixbufs.
+ */
+void
+ev_pixbuf_cache_clear (EvPixbufCache *pixbuf_cache)
+{
+       int i;
+
+       for (i = 0; i < pixbuf_cache->preload_cache_size; i++) {
+               dispose_cache_job_info (pixbuf_cache->prev_job + i, pixbuf_cache);
+               dispose_cache_job_info (pixbuf_cache->next_job + i, pixbuf_cache);
+       }
+
+       for (i = 0; i < PAGE_CACHE_LEN (pixbuf_cache); i++) {
+               dispose_cache_job_info (pixbuf_cache->job_list + i, pixbuf_cache);
+       }
+}
+
+
 GdkPixbuf *
 ev_pixbuf_cache_get_selection_pixbuf (EvPixbufCache *pixbuf_cache,
                                      gint           page,
 GdkPixbuf *
 ev_pixbuf_cache_get_selection_pixbuf (EvPixbufCache *pixbuf_cache,
                                      gint           page,