summaryrefslogtreecommitdiff
path: root/libpurple/signals.c
diff options
context:
space:
mode:
authorJohn Bailey <rekkanoryo@rekkanoryo.org>2010-03-07 01:27:02 +0000
committerJohn Bailey <rekkanoryo@rekkanoryo.org>2010-03-07 01:27:02 +0000
commita2a66f7c41e6751ff16aa1365e14a43d4e9e93af (patch)
treefbdd7782d7cacefe3ab9e338e056fc8415e0b843 /libpurple/signals.c
parent83ab595000588581959cdd5148651547ceb3a97c (diff)
downloadpidgin-a2a66f7c41e6751ff16aa1365e14a43d4e9e93af.tar.gz
Add purple_marshal_POINTER__POINTER(), which sadrul says should be used for the
patch attached to #4598. Refs #4598.
Diffstat (limited to 'libpurple/signals.c')
-rw-r--r--libpurple/signals.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/libpurple/signals.c b/libpurple/signals.c
index dbd4ed0361..ff1984b4e7 100644
--- a/libpurple/signals.c
+++ b/libpurple/signals.c
@@ -1009,6 +1009,21 @@ purple_marshal_BOOLEAN__INT_POINTER(PurpleCallback cb, va_list args, void *data,
}
void
+purple_marshal_POINTER__POINTER(
+ PurpleCallback cb, va_list args, void *data,
+ void **return_val)
+{
+ gpointer ret_val;
+ void *arg1 = va_arg(args, void *);
+
+ ret_val = ((gpointer(*)(void *, void *))cb)(arg1, data);
+
+ if (return_val != NULL)
+ *return_val = ret_val;
+}
+
+
+void
purple_marshal_POINTER__POINTER_INT(
PurpleCallback cb, va_list args, void *data,
void **return_val)