Mercurial > geeqie
diff src/view_dir.c @ 1523:24a12aa0cb54
Fix up event source ids type: gint -> guint.
Functions like g_timeout_add() or g_idle_add() return a guint
greater than 0, but in most places it was wrongly stored as int
and initialized to -1.
This broke assertions matching in g_source_remove() for example
since id was always greater than 0 even when timer was not set
(-1 was casted to the biggest guint).
author | zas_ |
---|---|
date | Mon, 06 Apr 2009 22:13:54 +0000 |
parents | c9ed5a43c576 |
children | 626adbb26387 |
line wrap: on
line diff
--- a/src/view_dir.c Mon Apr 06 21:52:49 2009 +0000 +++ b/src/view_dir.c Mon Apr 06 22:13:54 2009 +0000 @@ -67,8 +67,6 @@ ViewDir *vd = g_new0(ViewDir, 1); - vd->drop_scroll_id = -1; - vd->widget = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(vd->widget), GTK_SHADOW_IN); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(vd->widget), @@ -803,8 +801,11 @@ void vd_dnd_drop_scroll_cancel(ViewDir *vd) { - if (vd->drop_scroll_id != -1) g_source_remove(vd->drop_scroll_id); - vd->drop_scroll_id = -1; + if (vd->drop_scroll_id) + { + g_source_remove(vd->drop_scroll_id); + vd->drop_scroll_id = 0; + } } static gboolean vd_auto_scroll_idle_cb(gpointer data) @@ -826,7 +827,7 @@ } } - vd->drop_scroll_id = -1; + vd->drop_scroll_id = 0; return FALSE; } @@ -836,7 +837,7 @@ if (!vd->drop_fd || vd->drop_list) return FALSE; - if (vd->drop_scroll_id == -1) vd->drop_scroll_id = g_idle_add(vd_auto_scroll_idle_cb, vd); + if (!vd->drop_scroll_id) vd->drop_scroll_id = g_idle_add(vd_auto_scroll_idle_cb, vd); return TRUE; }