[dia] Bug #585004 - undefined symbol gtk_signal_disconnect_by_data



commit c0570451c5e424e1bf336400c0f9f24802421b12
Author: Hans Breuer <hans breuer org>
Date:   Sat Jun 6 18:58:45 2009 +0200

    Bug #585004 - undefined symbol gtk_signal_disconnect_by_data
    
    --enable-debug defines GTK_DISABLE_DEPRECATED which results in
    an unresolveable symbol - it is just a deprecated macro.
    Fixed by using un-deprecated g_signal_handlers_disconnect_matched()
---
 plug-ins/libart/export_png.c |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/plug-ins/libart/export_png.c b/plug-ins/libart/export_png.c
index dacf158..fa9d44b 100644
--- a/plug-ins/libart/export_png.c
+++ b/plug-ins/libart/export_png.c
@@ -255,10 +255,10 @@ export_png_ok(GtkButton *button, gpointer userdata)
  error:
   g_object_unref(renderer);
   if (button != NULL) {
-    gtk_signal_disconnect_by_data(GTK_OBJECT(export_png_okay_button),
-				  userdata);
-    gtk_signal_disconnect_by_data(GTK_OBJECT(export_png_cancel_button),
-				  userdata);
+    g_signal_handlers_disconnect_matched (GTK_OBJECT(export_png_okay_button), 
+					  G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, userdata);
+    g_signal_handlers_disconnect_matched (GTK_OBJECT(export_png_cancel_button), 
+					  G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, userdata);
   }
   g_free(cbdata->filename);
   g_free(cbdata);
@@ -271,11 +271,14 @@ export_png_ok(GtkButton *button, gpointer userdata)
    free callback data
 */
 static void
-export_png_cancel(GtkButton *button, gpointer userdata) {
+export_png_cancel(GtkButton *button, gpointer userdata) 
+{
   struct png_callback_data *cbdata = (struct png_callback_data *)userdata;
 
-  gtk_signal_disconnect_by_data(GTK_OBJECT(export_png_okay_button), userdata);
-  gtk_signal_disconnect_by_data(GTK_OBJECT(export_png_cancel_button), userdata);
+  g_signal_handlers_disconnect_matched (GTK_OBJECT(export_png_okay_button), 
+					G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, userdata);
+  g_signal_handlers_disconnect_matched (GTK_OBJECT(export_png_cancel_button), 
+					G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, userdata);
 
   gtk_widget_hide(export_png_dialog);
   g_free(cbdata->filename);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]