diff options
-rw-r--r-- | libpurple/conversation.c | 4 | ||||
-rw-r--r-- | libpurple/signals.c | 19 | ||||
-rw-r--r-- | libpurple/signals.h | 2 |
3 files changed, 23 insertions, 2 deletions
diff --git a/libpurple/conversation.c b/libpurple/conversation.c index 707419fda7..53432fc18a 100644 --- a/libpurple/conversation.c +++ b/libpurple/conversation.c @@ -2064,7 +2064,7 @@ purple_conversations_init(void) * Register signals **********************************************************************/ purple_signal_register(handle, "writing-im-msg", - purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER, + purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT, purple_value_new(PURPLE_TYPE_BOOLEAN), 5, purple_value_new(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_ACCOUNT), @@ -2124,7 +2124,7 @@ purple_conversations_init(void) purple_value_new(PURPLE_TYPE_UINT)); purple_signal_register(handle, "writing-chat-msg", - purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER, + purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT, purple_value_new(PURPLE_TYPE_BOOLEAN), 5, purple_value_new(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_ACCOUNT), diff --git a/libpurple/signals.c b/libpurple/signals.c index d03ab95354..e2bc1af195 100644 --- a/libpurple/signals.c +++ b/libpurple/signals.c @@ -932,6 +932,25 @@ purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER( } void +purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT( + PurpleCallback cb, va_list args, void *data, void **return_val) +{ + gboolean ret_val; + void *arg1 = va_arg(args, void *); + void *arg2 = va_arg(args, void *); + void *arg3 = va_arg(args, void *); + void *arg4 = va_arg(args, void *); + guint arg5 = va_arg(args, guint); + + ret_val = + ((gboolean (*)(void *, void *, void *, void *, void *, guint))cb)( + arg1, arg2, arg3, arg4, arg5, data); + + if (return_val != NULL) + *return_val = GINT_TO_POINTER(ret_val); +} + +void purple_marshal_BOOLEAN__INT_POINTER(PurpleCallback cb, va_list args, void *data, void **return_val) { diff --git a/libpurple/signals.h b/libpurple/signals.h index cef5785309..c39a1c4ce3 100644 --- a/libpurple/signals.h +++ b/libpurple/signals.h @@ -323,6 +323,8 @@ void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER( PurpleCallback cb, va_list args, void *data, void **return_val); void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_POINTER( PurpleCallback cb, va_list args, void *data, void **return_val); +void purple_marshal_BOOLEAN__POINTER_POINTER_POINTER_POINTER_UINT( + PurpleCallback cb, va_list args, void *data, void **return_val); void purple_marshal_BOOLEAN__INT_POINTER( PurpleCallback cb, va_list args, void *data, void **return_val); |