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 st...@apache.org on 2015/01/28 01:40:25 UTC

svn commit: r1655200 - /perl/modperl/trunk/src/modules/perl/modperl_util.c

Author: stevehay
Date: Wed Jan 28 00:40:25 2015
New Revision: 1655200

URL: http://svn.apache.org/r1655200
Log:
Fix server start-up for test suite with perl-5.21.7

As of commit http://perl5.git.perl.org/perl.git/commit/a70f21d0d1 the CV* for main::add_my_version in modperl_extra.pl now has backref magic, which causes SvMAGICAL(cv) to return TRUE but the subsequent attempt to find ext magic will fail since only backref magic is present. See https://rt.perl.org/Public/Bug/Display.html?id=123683

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

Modified: perl/modperl/trunk/src/modules/perl/modperl_util.c
URL: http://svn.apache.org/viewvc/perl/modperl/trunk/src/modules/perl/modperl_util.c?rev=1655200&r1=1655199&r2=1655200&view=diff
==============================================================================
--- perl/modperl/trunk/src/modules/perl/modperl_util.c (original)
+++ perl/modperl/trunk/src/modules/perl/modperl_util.c Wed Jan 28 00:40:25 2015
@@ -890,7 +890,7 @@ SV *modperl_pnotes(pTHX_ modperl_pnotes_
 U16 *modperl_code_attrs(pTHX_ CV *cv) {
     MAGIC *mg;    
 
-    if (!SvMAGICAL(cv)) {
+    if (!(SvMAGICAL(cv) && (mg = mg_find((SV*)cv, PERL_MAGIC_ext)))) {
        sv_magic((SV*)cv, (SV *)NULL, PERL_MAGIC_ext, NULL, -1); 
     }