diff options
Diffstat (limited to 'libmatekbd/matekbd-keyboard-config.c')
-rw-r--r-- | libmatekbd/matekbd-keyboard-config.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/libmatekbd/matekbd-keyboard-config.c b/libmatekbd/matekbd-keyboard-config.c index 7338e28..8a683c5 100644 --- a/libmatekbd/matekbd-keyboard-config.c +++ b/libmatekbd/matekbd-keyboard-config.c @@ -650,9 +650,16 @@ matekbd_keyboard_config_start_listen (MatekbdKeyboardConfig * kbd_config, void matekbd_keyboard_config_stop_listen (MatekbdKeyboardConfig * kbd_config) { - g_signal_handler_disconnect (kbd_config->settings, - kbd_config->config_listener_id); - kbd_config->config_listener_id = 0; +#if GLIB_CHECK_VERSION(2,62,0) + g_clear_signal_handler (&kbd_config->config_listener_id, + kbd_config->settings); +#else + if (kbd_config->config_listener_id != 0) { + g_signal_handler_disconnect (kbd_config->settings, + kbd_config->config_listener_id); + kbd_config->config_listener_id = 0; + } +#endif } gboolean |