Skip to content

Commit

Permalink
* subversion/bindings/swig/include/svn_types.swg:
Browse files Browse the repository at this point in the history
  Bracket calls with PUTBACK/SPAGAIN to helper functions 
  that call back into Perl:
  - svn_swig_pl_make_stream
  - svn_swig_pl_from_stream
  - svn_swig_pl_from_md5
  Note: calls in typemaps need only SPAGAIN.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1683266 13f79535-47bb-0310-9956-ffa450edef68
  • Loading branch information
Roderich Schupp committed Jun 3, 2015
1 parent e879416 commit a074af8
Showing 1 changed file with 16 additions and 3 deletions.
19 changes: 16 additions & 3 deletions subversion/bindings/swig/include/svn_types.swg
Original file line number Diff line number Diff line change
Expand Up @@ -935,15 +935,24 @@ svn_ ## TYPE ## _swig_rb_closed(VALUE self)
#ifdef SWIGPERL
%typemap(in) svn_stream_t * {
svn_swig_pl_make_stream (&$1, $input);
SPAGAIN;
}

%typemap(out) svn_stream_t * {
$result = svn_swig_pl_from_stream ($1);
SV* tmp;
PUTBACK;
tmp = svn_swig_pl_from_stream ($1);
SPAGAIN;
$result = tmp;
argvi++;
}

%typemap(argout) svn_stream_t ** {
%append_output(svn_swig_pl_from_stream(*$1));
SV *tmp;
PUTBACK;
tmp = svn_swig_pl_from_stream(*$1);
SPAGAIN;
%append_output(tmp);
}
#endif

Expand Down Expand Up @@ -1116,7 +1125,11 @@ svn_ ## TYPE ## _swig_rb_closed(VALUE self)
}

%typemap(argout) unsigned char *result_digest {
%append_output(svn_swig_pl_from_md5($1));
SV *tmp;
PUTBACK;
tmp = svn_swig_pl_from_md5($1);
SPAGAIN;
%append_output(tmp);
}
#endif

Expand Down

0 comments on commit a074af8

Please sign in to comment.