Change 32951 by [EMAIL PROTECTED] on 2008/01/11 12:47:57

        Remove code that protected pp_qr against REGEXPs going away during
        global destruction whilst they were stored via true references in
        PL_regex_padav. It won't happen again (unless someone manages to get
        a reference to an OP's regexp, which is also a risk in 5.10 and 5.8)

Affected files ...

... //depot/perl/pp_hot.c#553 edit

Differences ...

==== //depot/perl/pp_hot.c#553 (text) ====
Index: perl/pp_hot.c
--- perl/pp_hot.c#552~32949~    2008-01-11 03:31:34.000000000 -0800
+++ perl/pp_hot.c       2008-01-11 04:47:57.000000000 -0800
@@ -1200,15 +1200,6 @@
     SV * const pkg = rx ? CALLREG_PACKAGE(rx) : NULL;
     SV * const rv = sv_newmortal();
 
-    if (!rx) {
-       /* FIXME ORANGE.
-          This can go if/when regexps are stored directly in PL_regex_pad
-          rather than via references. do_clean_objs finds and frees them
-          when they are stored as references.  */
-       XPUSHs(rv);
-       RETURN;
-    }
-
     SvUPGRADE(rv, SVt_IV);
     /* This RV is about to own a reference to the regexp. (In addition to the
        reference already owned by the PMOP.  */
End of Patch.

Reply via email to