Date: Wed, 8 Dec 2004 09:35:30 +0100 From: Jozef Matula <Jozef.Matula@iblsoft.com> To: FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>, James Bromberger <jeb@debian.org> Subject: BUGREPORT: Tab to space expanding bug Message-ID: <200412080935.30700.Jozef.Matula@iblsoft.com>
index | next in thread | raw e-mail
Hello,
We use CVSweb version 3:3.0.2-2 under Debian Linux unstable distribution.
We found a bug in algorithm of expanding tabs into spaces in main CGI Perl
script:
- $1 was not in expansiong so, after multiple tab expansions text before
tabs was discarded
- expanding with less than $ts spaces was also incorrect, because $1 as (.*)
was matching longest string, including any previous NOT EXPANDED tabs.
I think, this patch is fixing it.
--- cvsweb 2004-11-17 02:23:53.000000000 +0100
+++ /usr/lib/cgi-bin/cvsweb 2004-12-08 09:22:33.000000000 +0100
@@ -1579,7 +1579,7 @@
if (defined($ts)) {
# Expand tabs
- 1 while s/(.*)(\t+)/' ' x (length($2) * $ts - length($1) % $ts)/e;
+ 1 while s/(.*?)(\t+)/$1 . ' ' x (length($2) * $ts - length($1) %
$ts)/e;
}
# replace <tab> and <space> (\001 is to protect us from htmlify)
Best regards,
Jozef Matula
--
Jozef MATULA (Jozef.Matula@iblsoft.com)
IBL Software Engineering, http://www.iblsoft.com
Mierova 103, 82105 Bratislava, Slovakia
Tel: +421-2-43427227, fax: +421-2-43427214
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412080935.30700.Jozef.Matula>
