# HG changeset patch # User Sadrul Habib Chowdhury # Date 1191470553 0 # Node ID 0af37f1abb17182891cd99d9e4284d2195631e4c # Parent b9d6cd4d9024e006272462cb798cb0b9366c3274 Add marshalling functions for the authorization signals. diff -r b9d6cd4d9024 -r 0af37f1abb17 libpurple/signals.c --- a/libpurple/signals.c Wed Oct 03 14:14:31 2007 +0000 +++ b/libpurple/signals.c Thu Oct 04 04:02:33 2007 +0000 @@ -794,6 +794,19 @@ *return_val = GINT_TO_POINTER(ret_val); } +void +purple_marshal_INT__POINTER_POINTER(PurpleCallback cb, va_list args, void *data, + void **return_val) +{ + gint ret_val; + void *arg1 = va_arg(args, void *); + void *arg2 = va_arg(args, void *); + + ret_val = ((gint (*)(void *, void *, void *))cb)(arg1, arg2, data); + + if (return_val != NULL) + *return_val = GINT_TO_POINTER(ret_val); +} void purple_marshal_INT__POINTER_POINTER_POINTER_POINTER_POINTER( diff -r b9d6cd4d9024 -r 0af37f1abb17 libpurple/signals.h --- a/libpurple/signals.h Wed Oct 03 14:14:31 2007 +0000 +++ b/libpurple/signals.h Thu Oct 04 04:02:33 2007 +0000 @@ -307,6 +307,8 @@ PurpleCallback cb, va_list args, void *data, void **return_val); void purple_marshal_INT__INT_INT( PurpleCallback cb, va_list args, void *data, void **return_val); +void purple_marshal_INT__POINTER_POINTER( + PurpleCallback cb, va_list args, void *data, void **return_val); void purple_marshal_INT__POINTER_POINTER_POINTER_POINTER_POINTER( PurpleCallback cb, va_list args, void *data, void **return_val);