You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by to...@apache.org on 2011/05/20 19:22:24 UTC

svn commit: r1125476 - /perl/modperl/trunk/src/modules/perl/modperl_svptr_table.c

Author: torsten
Date: Fri May 20 17:22:24 2011
New Revision: 1125476

URL: http://svn.apache.org/viewvc?rev=1125476&view=rev
Log:
adopt the Perl_sv_dup() changes in Perl 5.14

Modified:
    perl/modperl/trunk/src/modules/perl/modperl_svptr_table.c

Modified: perl/modperl/trunk/src/modules/perl/modperl_svptr_table.c
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/src/modules/perl/modperl_svptr_table.c?rev=1125476&r1=1125475&r2=1125476&view=diff
==============================================================================
--- perl/modperl/trunk/src/modules/perl/modperl_svptr_table.c (original)
+++ perl/modperl/trunk/src/modules/perl/modperl_svptr_table.c Fri May 20 17:22:24 2011
@@ -30,7 +30,7 @@
 #ifdef USE_ITHREADS
 
 #if MP_PERL_BRANCH(5, 6)
-#   define my_sv_dup(s, p) sv_dup(s)
+#   define my_sv_dup(s, p) SvREFCNT_inc(sv_dup(s))
 
 typedef struct {
     AV *stashes;
@@ -39,7 +39,11 @@ typedef struct {
 } CLONE_PARAMS;
 
 #else
-#   define my_sv_dup(s, p) sv_dup(s, p)
+#   ifdef sv_dup_inc
+#       define my_sv_dup(s, p) sv_dup_inc(s, p)
+#   else
+#       define my_sv_dup(s, p) SvREFCNT_inc(sv_dup(s, p))
+#   endif
 #endif
 
 /*
@@ -89,8 +93,7 @@ PTR_TBL_t *modperl_svptr_table_clone(pTH
             /* key is just a pointer we do not modify, no need to copy */
             dst_ent->oldval = src_ent->oldval;
 
-            dst_ent->newval =
-                SvREFCNT_inc(my_sv_dup((SV*)src_ent->newval, &parms));
+            dst_ent->newval = my_sv_dup((SV*)src_ent->newval, &parms);
         }
     }