diff options
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/gdkdnd.c | 5 | ||||
-rw-r--r-- | gdk/gdkevents.c | 4 | ||||
-rw-r--r-- | gdk/x11/gdkdnd-x11.c | 5 | ||||
-rw-r--r-- | gdk/x11/gdkevents-x11.c | 4 |
4 files changed, 12 insertions, 6 deletions
diff --git a/gdk/gdkdnd.c b/gdk/gdkdnd.c index c3fdaa58be..b2653628a5 100644 --- a/gdk/gdkdnd.c +++ b/gdk/gdkdnd.c @@ -131,10 +131,11 @@ void gdk_drag_context_unref (GdkDragContext *context) { GdkDragContextPrivate *private = (GdkDragContextPrivate *)context; - private->ref_count--; - + g_return_if_fail (context != NULL); + private->ref_count--; + if (private->ref_count == 0) { g_dataset_destroy (private); diff --git a/gdk/gdkevents.c b/gdk/gdkevents.c index 5eb1b7815b..75dd891ddd 100644 --- a/gdk/gdkevents.c +++ b/gdk/gdkevents.c @@ -153,9 +153,11 @@ gdk_event_queue_find_first (void) while (tmp_list) { - GdkEventPrivate *event = queued_events->data; + GdkEventPrivate *event = tmp_list->data; if (!(event->flags & GDK_EVENT_PENDING)) return tmp_list; + + tmp_list = g_list_next (tmp_list); } return NULL; diff --git a/gdk/x11/gdkdnd-x11.c b/gdk/x11/gdkdnd-x11.c index c3fdaa58be..b2653628a5 100644 --- a/gdk/x11/gdkdnd-x11.c +++ b/gdk/x11/gdkdnd-x11.c @@ -131,10 +131,11 @@ void gdk_drag_context_unref (GdkDragContext *context) { GdkDragContextPrivate *private = (GdkDragContextPrivate *)context; - private->ref_count--; - + g_return_if_fail (context != NULL); + private->ref_count--; + if (private->ref_count == 0) { g_dataset_destroy (private); diff --git a/gdk/x11/gdkevents-x11.c b/gdk/x11/gdkevents-x11.c index 5eb1b7815b..75dd891ddd 100644 --- a/gdk/x11/gdkevents-x11.c +++ b/gdk/x11/gdkevents-x11.c @@ -153,9 +153,11 @@ gdk_event_queue_find_first (void) while (tmp_list) { - GdkEventPrivate *event = queued_events->data; + GdkEventPrivate *event = tmp_list->data; if (!(event->flags & GDK_EVENT_PENDING)) return tmp_list; + + tmp_list = g_list_next (tmp_list); } return NULL; |