From fda230235ce8879736803dc9e0ae918ce471201f Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Tue, 27 Sep 2011 17:03:15 -0700 Subject: [PATCH] Use the correct signal to avoid Gtk-CRITICAL error message We used the wrong signal - "data-drag-received" is intended to check whether the target will accept the drop. What we want is the "drag-drop" signal which tells the widget that something was dropped on it. Also fix an embarrassing lack of NULL pointer checks in my string comparisons... Signed-off-by: Dirk Hohndel --- gtk-gui.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gtk-gui.c b/gtk-gui.c index 985a70e..701e8fe 100644 --- a/gtk-gui.c +++ b/gtk-gui.c @@ -524,9 +524,9 @@ static void drag_cb(GtkWidget *widget, GdkDragContext *context, * this all to figure out which window we're talking about. */ source = gtk_drag_get_source_widget(context); - if (! strcmp(nbd[0].name,gtk_widget_get_name(source))) + if (nbd[0].name && ! strcmp(nbd[0].name,gtk_widget_get_name(source))) nbdp = nbd; - else if (! strcmp(nbd[1].name,gtk_widget_get_name(source))) + else if (nbd[1].name && ! strcmp(nbd[1].name,gtk_widget_get_name(source))) nbdp = nbd + 1; else /* HU? */ @@ -601,7 +601,7 @@ void init_ui(int argc, char **argv) gtk_notebook_set_group_name(GTK_NOTEBOOK(notebook), notebook_name); g_signal_connect(notebook, "create-window", G_CALLBACK(create_new_notebook_window), NULL); gtk_drag_dest_set(notebook, GTK_DEST_DEFAULT_ALL, ¬ebook_target, 1, GDK_ACTION_MOVE); - g_signal_connect(notebook, "drag-data-received", G_CALLBACK(drag_cb), notebook); + g_signal_connect(notebook, "drag-drop", G_CALLBACK(drag_cb), notebook); g_signal_connect(notebook, "switch-page", G_CALLBACK(switch_page), NULL); /* Create the actual divelist */ -- 2.45.2