fix little utf8 nits in testsuite; add patch from Ilya that cures
Gurusamy Sarathy [Sun, 25 Jul 1999 04:56:56 +0000 (04:56 +0000)]
a utf8 bug in one of the new RE optimizations

p4raw-id: //depot/perl@3730

regcomp.c
regexec.c
t/harness
t/lib/io_udp.t
t/op/re_tests
t/pragma/locale.t

index c6fb7fe..2d81da1 100644 (file)
--- a/regcomp.c
+++ b/regcomp.c
@@ -3224,6 +3224,7 @@ void
 Perl_pregfree(pTHX_ struct regexp *r)
 {
     dTHR;
+    DEBUG_r(if (!PL_colorset) reginitcolors());
     DEBUG_r(PerlIO_printf(Perl_debug_log,
                      "%sFreeing REx:%s `%s%.60s%s%s'\n",
                      PL_colors[4],PL_colors[5],PL_colors[0],
index e40d1c7..e69c4ff 100644 (file)
--- a/regexec.c
+++ b/regexec.c
@@ -321,6 +321,7 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
                 && (sv && (strpos + SvCUR(sv) != strend)) )
                goto fail;
 
+           PL_regeol = strend;                 /* Used in HOP() */
            s = (char*)HOP((U8*)strpos, prog->check_offset_min);
            if (SvTAIL(prog->check_substr)) {
                slen = SvCUR(prog->check_substr);       /* >= 1 */
index c46a870..b89b35a 100644 (file)
--- a/t/harness
+++ b/t/harness
@@ -57,7 +57,7 @@ EOT
 @tests = grep (!$infinite{$_}, @tests);
 @tests = map {
          my $new = $_;
-        if ($datahandle{$_} && !( -f $new.t) ) {
+        if ($datahandle{$_} && !( -f "$new.t") ) {
              $new .= '.t';
              local(*F, *T);
              open(F,"<$_") or die "Can't open $_: $!";
index 8547024..3d5145e 100755 (executable)
@@ -31,6 +31,7 @@ BEGIN {
 }
 
 sub compare_addr {
+    no utf8;
     my $a = shift;
     my $b = shift;
     if (length($a) != length $b) {
index cbcb725..34b6e29 100644 (file)
@@ -714,3 +714,4 @@ a(?{$a=2;$b=3;($b)=$a})b    yabz    y       $b      2
 round\(((?>[^()]+))\)  _I(round(xs * sz),1)    y       $1      xs * sz
 '((?x:.) )'    x       y       $1-     x -
 '((?-x:.) )'x  x       y       $1-     x-
+foo.bart       foo.bart        y       -       -
index f6b0f2d..4999617 100755 (executable)
@@ -11,6 +11,7 @@ BEGIN {
 }
 
 use strict;
+no utf8;
 
 my $debug = 1;