# HG changeset patch # User nadvornik # Date 1251034635 0 # Node ID 7c4a87f98cc9d772bd829bc1b7f7b3f7c5595f18 # Parent 9efd43f52b5b42ca6802950efc083c3ffb431761 fixed moving and maintenance of std. thumbnails https://sourceforge.net/tracker/?func=detail&aid=2836224&group_id=222125&atid=1054680 diff -r 9efd43f52b5b -r 7c4a87f98cc9 src/thumb_standard.c --- a/src/thumb_standard.c Sat Aug 22 21:58:49 2009 +0000 +++ b/src/thumb_standard.c Sun Aug 23 13:37:15 2009 +0000 @@ -778,8 +778,9 @@ GdkPixbuf *pixbuf; gboolean valid = FALSE; - /* this function is called on success, so the pixbuf should not be a fallback*/ - pixbuf = thumb_loader_std_get_pixbuf(tv->tl); + /* get the original thumbnail pixbuf (unrotated, with original options) + this is called from image_loader done callback, so tv->tl->il must exist*/ + pixbuf = image_loader_get_pixbuf(tv->tl->il); if (pixbuf) { const gchar *uri; @@ -820,8 +821,10 @@ } } } - - g_object_unref(pixbuf); + else + { + DEBUG_1("invalid image found in std cache: %s", tv->path); + } } thumb_loader_std_thumb_file_validate_finish(tv, valid); @@ -940,8 +943,9 @@ TMaintMove *tm = data; GdkPixbuf *pixbuf; - /* this function is called on success, so the pixbuf should not be a fallback*/ - pixbuf = thumb_loader_std_get_pixbuf(tm->tl); + /* get the original thumbnail pixbuf (unrotated, with original options) + this is called from image_loader done callback, so tm->tl->il must exist*/ + pixbuf = image_loader_get_pixbuf(tm->tl->il); if (pixbuf) { const gchar *uri; @@ -984,7 +988,6 @@ DEBUG_1("thumb move unlink: %s", tm->thumb_path); unlink_file(tm->thumb_path); - g_object_unref(pixbuf); } thumb_std_maint_move_step(tm);