return str;
}
+typedef struct {
+ TnySendQueueAddCallback callback;
+ gpointer user_data;
+} AddAsyncHelper;
+
static void
_on_added_to_outbox (TnySendQueue *self,
gboolean cancelled,
SendInfo *info = NULL;
GList* existing = NULL;
gchar* msg_id = NULL;
+ AddAsyncHelper *helper;
g_return_if_fail (TNY_IS_SEND_QUEUE(self));
g_return_if_fail (TNY_IS_CAMEL_MSG(msg));
end:
g_object_unref (G_OBJECT(header));
+
+ /* Call the user callback */
+ helper = (AddAsyncHelper *) user_data;
+ if (helper->callback)
+ helper->callback (self, cancelled, msg, err, helper->user_data);
+ g_slice_free (AddAsyncHelper, helper);
}
static void
TnyStatusCallback status_callback,
gpointer user_data)
{
+ AddAsyncHelper *helper = g_slice_new0 (AddAsyncHelper);
+ helper->callback = callback;
+ helper->user_data = user_data;
+
/* Call the superclass passing our own callback */
- TNY_CAMEL_SEND_QUEUE_CLASS(parent_class)->add_async (self, msg, _on_added_to_outbox, NULL, NULL);
+ TNY_CAMEL_SEND_QUEUE_CLASS(parent_class)->add_async (self, msg,
+ _on_added_to_outbox,
+ status_callback,
+ helper);
}