Mercurial > pidgin
view libpurple/dbus-maybe.h @ 26879:7c58f6f50f16
Block/Unblock the signal handler when if it's unblocked/blocked.
Trying to unblock the handler when it has not been blocked yet causes a
'handler not blocked' error message. When this message is added in the
debug window, it goes into a mutex-lock from this line:
gtk_list_store_append(debug_win->store, &iter);
I have noticed this before on some occasions, where pidgin goes into a
freeze when doing something from a signal-handler causes a debug message
to be printed. Anyone knows why?
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Sat, 16 May 2009 17:11:50 +0000 |
parents | 1568dc7a14f8 |
children |
line wrap: on
line source
/* This file contains macros that wrap calls to the purple dbus module. These macros call the appropriate functions if the build includes dbus support and do nothing otherwise. See "dbus-server.h" for documentation. */ #ifndef _PURPLE_DBUS_MAYBE_H_ #define _PURPLE_DBUS_MAYBE_H_ #ifdef HAVE_DBUS #ifndef DBUS_API_SUBJECT_TO_CHANGE #define DBUS_API_SUBJECT_TO_CHANGE #endif #include "dbus-server.h" /* this provides a type check */ #define PURPLE_DBUS_REGISTER_POINTER(ptr, type) { \ type *typed_ptr = ptr; \ purple_dbus_register_pointer(typed_ptr, PURPLE_DBUS_TYPE(type)); \ } #define PURPLE_DBUS_UNREGISTER_POINTER(ptr) purple_dbus_unregister_pointer(ptr) #else /* !HAVE_DBUS */ #define PURPLE_DBUS_REGISTER_POINTER(ptr, type) { \ if (ptr) {} \ } #define PURPLE_DBUS_UNREGISTER_POINTER(ptr) #define DBUS_EXPORT #endif /* HAVE_DBUS */ #endif