emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs-25 de7601f 1/2: Port to GTK with strict C11 compiler


From: Paul Eggert
Subject: [Emacs-diffs] emacs-25 de7601f 1/2: Port to GTK with strict C11 compiler
Date: Fri, 18 Mar 2016 15:43:37 +0000

branch: emacs-25
commit de7601f149a5fedc1f3f62c62ba94b9d0e3d2069
Author: Paul Eggert <address@hidden>
Commit: Paul Eggert <address@hidden>

    Port to GTK with strict C11 compiler
    
    * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
    Cast from function type to void * where the C standard requires this.
    This works around a problem in the prototypes for
    g_signal_handler_find and g_signal_handlers_block_by_func, which
    use gpointer instead of GCallback.  Found by using gcc -pedantic.
---
 src/gtkutil.c |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/gtkutil.c b/src/gtkutil.c
index 7dca585..ba059b7 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -1300,7 +1300,7 @@ xg_create_frame_widgets (struct frame *f)
     if (! g_signal_handler_find (G_OBJECT (gs),
                                  G_SIGNAL_MATCH_FUNC,
                                  0, 0, 0,
-                                 G_CALLBACK (style_changed_cb),
+                                 (gpointer) G_CALLBACK (style_changed_cb),
                                  0))
       {
         g_signal_connect (G_OBJECT (gs), "notify::gtk-theme-name",
@@ -1832,14 +1832,10 @@ xg_toggle_notify_cb (GObject *gobject, GParamSpec 
*arg1, gpointer user_data)
 
       if (!!visible != !!toggle_on)
         {
-          g_signal_handlers_block_by_func (G_OBJECT (wtoggle),
-                                           G_CALLBACK 
(xg_toggle_visibility_cb),
-                                           gobject);
+          gpointer cb = (gpointer) G_CALLBACK (xg_toggle_visibility_cb);
+          g_signal_handlers_block_by_func (G_OBJECT (wtoggle), cb, gobject);
           gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (wtoggle), visible);
-          g_signal_handlers_unblock_by_func
-            (G_OBJECT (wtoggle),
-             G_CALLBACK (xg_toggle_visibility_cb),
-             gobject);
+          g_signal_handlers_unblock_by_func (G_OBJECT (wtoggle), cb, gobject);
         }
       x_gtk_show_hidden_files = visible;
     }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]