You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by mc...@apache.org on 2013/10/04 21:21:00 UTC

svn commit: r1529269 - /qpid/trunk/qpid/cpp/include/qpid/swig_perl_typemaps.i

Author: mcpierce
Date: Fri Oct  4 19:21:00 2013
New Revision: 1529269

URL: http://svn.apache.org/r1529269
Log:
QPID-4730: Losing object references in Perl.

Contributed by Hao Chang Yu <hy...@redhat.com>

Modified:
    qpid/trunk/qpid/cpp/include/qpid/swig_perl_typemaps.i

Modified: qpid/trunk/qpid/cpp/include/qpid/swig_perl_typemaps.i
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/swig_perl_typemaps.i?rev=1529269&r1=1529268&r2=1529269&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/swig_perl_typemaps.i (original)
+++ qpid/trunk/qpid/cpp/include/qpid/swig_perl_typemaps.i Fri Oct  4 19:21:00 2013
@@ -192,8 +192,10 @@
 }
 
 %typemap (out) uint8_t, uint16_t, uint32_t, uint64_t {
-    sv_setuv($result, (UV)$1);
-    argvi++;
+  SV* tmp = sv_newmortal();
+  sv_setuv(tmp, (UV)$1);
+  $result = tmp;
+  argvi++;
 }
 
 %typemap (in) int8_t, int16_t, int32_t, int64_t {
@@ -206,8 +208,10 @@
 }
 
 %typemap (out) int8_t, int16_t, int32_t, int64_t {
-    sv_setiv($result, (IV)$1);
-    argvi++;
+  SV* tmp = sv_newmortal();
+  sv_setiv(tmp, (IV)$1);
+  $result = tmp;
+  argvi++;
 }
 
 %typemap(in) bool {



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org