markup-validator commit: Make finding transcode error line number more memory efficient.

changeset:   3194:c1b3289341f5
user:        Ville Skyttä <ville.skytta@iki.fi>
date:        Wed Dec 15 00:05:28 2010 +0200
files:       httpd/cgi-bin/check
description:
Make finding transcode error line number more memory efficient.


diff -r c226e4a4ebd7 -r c1b3289341f5 httpd/cgi-bin/check
--- a/httpd/cgi-bin/check	Tue Dec 14 23:44:45 2010 +0200
+++ b/httpd/cgi-bin/check	Wed Dec 15 00:05:28 2010 +0200
@@ -3222,9 +3222,9 @@
         # Transcoding failed - do it again line by line to find out exactly
         # where
         my $line_num = 0;
-        foreach my $input_line (split /\r\n|\n|\r/, $input) {
+        while ($input =~ /(.*?)(?:\r\n|\n|\r)/g) {
             $line_num++;
-            eval { $enc->decode($input_line, Encode::FB_CROAK); };
+            eval { $enc->decode($1, Encode::FB_CROAK); };
             if ($@) {
                 my $croak_message = $@;
                 $croak_message =~ s/ at .*//;

Received on Tuesday, 14 December 2010 22:16:00 UTC