Author: post
Date: 2010-10-16 14:01:03 +0200 (Sat, 16 Oct 2010)
New Revision: 3558
Modified:
trunk/src/rs-store.c
Log:
Keep track of blocked signal to avoid gdk warning when loading single image.
Modified: trunk/src/rs-store.c
===================================================================
--- trunk/src/rs-store.c 2010-10-16 11:50:55 UTC (rev 3557)
+++ trunk/src/rs-store.c 2010-10-16 12:01:03 UTC (rev 3558)
@@ -90,6 +90,7 @@
GString *tooltip_text;
GtkTreePath *tooltip_last_path;
volatile gint jobs_to_do;
+ gboolean counter_blocked; /* Only access when thread has
gdk lock */
};
/* Classes to user for io-system */
@@ -214,6 +215,7 @@
gboolean show_filenames;
GtkWidget *label_priorities;
+ store->counter_blocked = FALSE;
store->notebook = GTK_NOTEBOOK(gtk_notebook_new());
store->store = gtk_list_store_new (NUM_COLUMNS,
GDK_TYPE_PIXBUF,
@@ -1241,6 +1243,7 @@
gtk_label_set_markup(GTK_LABEL(store->label[4]), _("U
<small>(-)</small>"));
gtk_label_set_markup(GTK_LABEL(store->label[5]), _("D
<small>(-)</small>"));
g_signal_handler_block(store->store, store->counthandler);
+ store->counter_blocked = TRUE;
/* While we're loading, we keep the IO lock to ourself. We need to read
very basic meta and directory data */
rs_io_lock();
@@ -2465,7 +2468,10 @@
{
gdk_threads_enter();
/* FIXME: Refilter as this point - not before */
- g_signal_handler_unblock(job->store->store,
job->store->counthandler);
+ if (job->store->counter_blocked)
+ g_signal_handler_unblock(job->store->store,
job->store->counthandler);
+ job->store->counter_blocked = FALSE;
+
count_priorities(GTK_TREE_MODEL(job->store->store), NULL, NULL,
job->store->label);
RS_STORE_SORT_METHOD sort_method;
if (rs_conf_get_integer(CONF_STORE_SORT_METHOD,
(gint*)&sort_method))
_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit