[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Bindings for svn_auth_get_platform_specific_client_providers missing

From: Matthijs Kooijman <matthijs_at_stdin.nl>
Date: Wed, 8 Sep 2010 20:09:24 +0200

Hi folks,

> While writing this, I've finally found the "include/svn_containers.swg"
> file containing all kinds of typemaps for the apr_*_t types. I'll try
> poking in there a bit, I'll keep you posted.

Using the following patch (which just appends a bit to the end of the file),
the svn_auth_get_platform_specific_client_providers becomes available in the
perl bindings (and with a small change to git-svn, I can use gnome-keyring from
git-svn now :-D).

I've copied this code from the typemaps for svn_client_proplist_item_t in
svn_client.i, but those seem to contain specific conversion code for Ruby and
Python, while the actual pointer type is just preserved in Perl. I'm not
completly sure how this would work for Python and Ruby, perhaps someone else
can help me out here?

Would you considering committing this patch (after completion) to the main
repository?

Gr.

Matthijs

Index: subversion-1.6.12dfsg/subversion/bindings/swig/include/svn_containers.swg
===================================================================
--- subversion-1.6.12dfsg.orig/subversion/bindings/swig/include/svn_containers.swg 2010-09-08 20:00:18.000000000 +0200
+++ subversion-1.6.12dfsg/subversion/bindings/swig/include/svn_containers.swg 2010-09-08 20:00:22.000000000 +0200
@@ -808,3 +808,13 @@
 %typemap(argout) apr_array_header_t **RANGELIST_INOUT =
    apr_array_header_t **RANGELIST;
 #endif
+
+/* -----------------------------------------------------------------------
+ Output of apr_array_header_t * <svn_auth_provider_object_t *>
+*/
+#ifdef SWIGPERL
+%typemap(argout) apr_array_header_t **providers {
+ %append_output(svn_swig_pl_convert_array(*$1,
+ $descriptor(svn_auth_provider_object_t *)));
+}
+#endif

Received on 2010-09-08 20:10:06 CEST

This is an archived mail posted to the Subversion Dev mailing list.