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;
 }