Update Changes and test semi-automatic patchlevel updating.
[p5sagit/p5-mst-13.2.git] / regcomp.c
index fd4633b..2da9911 100644 (file)
--- a/regcomp.c
+++ b/regcomp.c
@@ -2190,14 +2190,14 @@ S_reg(pTHX_ I32 paren, I32 *flagp)
     if (paren) {
        PL_regflags = oregflags;
        if (PL_regcomp_parse >= PL_regxend || *nextchar() != ')') {
-           PL_regcomp_parse++;
-           vFAIL("Unmatched (");
+           PL_regcomp_parse = oregcomp_parse;
+           vFAIL("Unmatched (");
        }
     }
     else if (!paren && PL_regcomp_parse < PL_regxend) {
        if (*PL_regcomp_parse == ')') {
-           PL_regcomp_parse = oregcomp_parse;
-           vFAIL("Unmatched (");
+           PL_regcomp_parse++;
+           vFAIL("Unmatched )");
        }
        else
            FAIL("Junk on end of regexp");      /* "Can't happen". */
@@ -2704,8 +2704,8 @@ tryagain:
                if (num > 9 && num >= PL_regnpar)
                    goto defchar;
                else {
-                   while (isDIGIT(*PL_regcomp_parse))
-                       PL_regcomp_parse++;
+                   while (isDIGIT(*PL_regcomp_parse))
+                       PL_regcomp_parse++;
 
                    if (!SIZE_ONLY && num > PL_regcomp_rx->nparens)
                        vFAIL("Reference to nonexistent group");