summaryrefslogtreecommitdiff
path: root/thumbnails.c
diff options
context:
space:
mode:
authorJon Bergli Heier <snakebite@jvnv.net>2010-01-04 02:43:19 +0100
committerJon Bergli Heier <snakebite@jvnv.net>2010-01-04 02:43:19 +0100
commit0f1c07f4835992f3d5b9c2378e0527a633eea225 (patch)
tree4f904327797726001aae87e2cd3fa1bc172ebfee /thumbnails.c
parent9120a30db940b4e2a4f08ff6436161810b4f8302 (diff)
Moved thumb thread start code to its own function.
Diffstat (limited to 'thumbnails.c')
-rw-r--r--thumbnails.c10
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;
}