]> Sergey Matveev's repositories - public-inbox.git/commitdiff
solver|viewdiff: restrict digit matches to ASCII
authorEric Wong <e@80x24.org>
Tue, 4 Jun 2019 08:30:55 +0000 (08:30 +0000)
committerEric Wong <e@80x24.org>
Tue, 4 Jun 2019 10:06:18 +0000 (10:06 +0000)
git would not generate non-ASCII digits to describe
hunk offsets, so don't waste more time than necessary
to make sense of non-ASCII digit chars for line offsets.

lib/PublicInbox/SolverGit.pm
lib/PublicInbox/ViewDiff.pm

index 3841c56719932a7c5ea4988b38bed549c3c9200d..81f99025cb08d7a881f60d72c2467889c5c94d61 100644 (file)
@@ -206,7 +206,7 @@ sub find_extract_diff ($$$) {
        }
 
        my $msgs = $srch->query($q, { relevance => 1 });
-       my $re = qr/\Aindex ($pre[a-f0-9]*)\.\.($post[a-f0-9]*)(?: (\d+))?/;
+       my $re = qr/\Aindex ($pre[a-f0-9]*)\.\.($post[a-f0-9]*)(?: ([0-9]+))?/;
 
        my $di;
        foreach my $smsg (@$msgs) {
index 411ed2bb7d4fb53d1b811a2bcf29c76c4265ae01..b7dab81946efe9372fa0a433740d1bd331b206a1 100644 (file)
@@ -55,12 +55,12 @@ sub diff_hunk ($$$$) {
        (defined($spfx) && defined($oid_a) && defined($oid_b)) or
                return "@@ $ca $cb @@";
 
-       my ($n) = ($ca =~ /^-(\d+)/);
+       my ($n) = ($ca =~ /^-([0-9]+)/);
        $n = defined($n) ? do { ++$n; "#n$n" } : '';
 
        my $rv = qq(@@ <a\nhref="$spfx$oid_a/s/$dctx->{Q}$n">$ca</a>);
 
-       ($n) = ($cb =~ /^\+(\d+)/);
+       ($n) = ($cb =~ /^\+([0-9]+)/);
        $n = defined($n) ? do { ++$n; "#n$n" } : '';
 
        $rv .= qq( <a\nhref="$spfx$oid_b/s/$dctx->{Q}$n">$cb</a> @@);