diff options
author | Jon Bergli Heier <snakebite@jvnv.net> | 2010-01-04 02:43:19 +0100 |
---|---|---|
committer | Jon Bergli Heier <snakebite@jvnv.net> | 2010-01-04 02:43:19 +0100 |
commit | 0f1c07f4835992f3d5b9c2378e0527a633eea225 (patch) | |
tree | 4f904327797726001aae87e2cd3fa1bc172ebfee /thumbnails.c | |
parent | 9120a30db940b4e2a4f08ff6436161810b4f8302 (diff) |
Moved thumb thread start code to its own function.
Diffstat (limited to 'thumbnails.c')
-rw-r--r-- | thumbnails.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/thumbnails.c b/thumbnails.c index 0bffcf5..a684938 100644 --- a/thumbnails.c +++ b/thumbnails.c @@ -6,6 +6,9 @@ #include "db.h" #include "thumbnails.h" +GThread *thumb_thread = NULL; +gboolean thumb_thread_exit = FALSE; + inline static gchar *get_wall_thumb_name(const gchar *filepath) { GChecksum *ck; gchar *s; @@ -129,6 +132,8 @@ gpointer add_thumbs_thread(gpointer data) { GdkPixbuf *pb = NULL; const gchar *filepath; + thumb_thread_exit = FALSE; + liststore = GTK_LIST_STORE(data); if(!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(liststore), &iter)) { @@ -138,6 +143,9 @@ gpointer add_thumbs_thread(gpointer data) { n = gtk_tree_model_iter_n_children(GTK_TREE_MODEL(liststore), NULL); for(int i = 0; i < n; i++) { + if(thumb_thread_exit == TRUE) + break; + gtk_tree_model_get_value(GTK_TREE_MODEL(liststore), &iter, 1, &value); filepath = g_value_get_string(&value); pb = get_thumbnail(filepath); @@ -149,4 +157,6 @@ gpointer add_thumbs_thread(gpointer data) { } gtk_tree_model_iter_next(GTK_TREE_MODEL(liststore), &iter); } + + thumb_thread = NULL; } |