Change 30313 by [EMAIL PROTECTED] on 2007/02/15 12:39:46

        Subject: Re: [perl #41491] Incorrect regexp warning.
        From: demerphq <[EMAIL PROTECTED]>
        Date: Thu, 15 Feb 2007 12:07:40 +0100
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

... //depot/perl/regcomp.c#556 edit

Differences ...

==== //depot/perl/regcomp.c#556 (text) ====
Index: perl/regcomp.c
--- perl/regcomp.c#555~30265~   2007-02-13 11:43:15.000000000 -0800
+++ perl/regcomp.c      2007-02-15 04:39:46.000000000 -0800
@@ -5669,7 +5669,7 @@
     }
     else if (paren != '?')             /* Not Conditional */
        ret = br;
-    *flagp |= flags & (SPSTART | HASWIDTH);
+    *flagp |= flags & (SPSTART | HASWIDTH | POSTPONED);
     lastbr = br;
     while (*RExC_parse == '|') {
        if (!SIZE_ONLY && RExC_extralen) {
@@ -5690,9 +5690,7 @@
            return(NULL);
         REGTAIL(pRExC_state, lastbr, br);               /* BRANCH -> BRANCH. */
        lastbr = br;
-       if (flags&HASWIDTH)
-           *flagp |= HASWIDTH;
-       *flagp |= flags&SPSTART;
+       *flagp |= flags & (SPSTART | HASWIDTH | POSTPONED);
     }
 
     if (have_branch || paren != ':') {
@@ -5833,7 +5831,7 @@
        }
        else if (ret == NULL)
            ret = latest;
-       *flagp |= flags&HASWIDTH;
+       *flagp |= flags&(HASWIDTH|POSTPONED);
        if (chain == NULL)      /* First piece. */
            *flagp |= flags&SPSTART;
        else {
End of Patch.

Reply via email to