From owner-freebsd-cvsweb@FreeBSD.ORG Fri Jun 4 06:57:30 2004 Return-Path: Delivered-To: freebsd-cvsweb@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 13D0316A4CE for ; Fri, 4 Jun 2004 06:57:30 -0700 (PDT) Received: from smtp2.pp.htv.fi (smtp2.pp.htv.fi [213.243.153.35]) by mx1.FreeBSD.org (Postfix) with ESMTP id CEEBC43D45 for ; Fri, 4 Jun 2004 06:57:29 -0700 (PDT) (envelope-from scop@FreeBSD.org) Received: from posti.pp.htv.fi (posti.pp.htv.fi [212.90.64.50]) by smtp2.pp.htv.fi (Postfix) with ESMTP id B18EA297F78 for ; Fri, 4 Jun 2004 16:57:24 +0300 (EEST) Received: from [62.78.130.181] (cs78130181.pp.htv.fi [62.78.130.181]) /8.11.1) with ESMTP id i54DvOJ22213 for ; Fri, 4 Jun 2004 16:57:24 +0300 (EETDST) From: Ville =?ISO-8859-1?Q?Skytt=E4?= To: freebsd-cvsweb@FreeBSD.org In-Reply-To: <20040604095002.GA28772@vgelder.com> References: <20040602171019.GA12732@vgelder.com> <20040604095002.GA28772@vgelder.com> Content-Type: text/plain Organization: FreeBSD Message-Id: <1086357443.30172.290.camel@bobcat.mine.nu> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.6 (1.4.6-2) Date: Fri, 04 Jun 2004 16:57:24 +0300 Content-Transfer-Encoding: 7bit Subject: Re: cvsweb version 3:3.0.1-1 diff problems (and howto debug this) X-BeenThere: freebsd-cvsweb@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS Web maintenance mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Jun 2004 13:57:30 -0000 On Fri, 2004-06-04 at 12:50, Koos Vriezen wrote: > Ok, turned out to be the query string was not parsed right. The string > r1=1.1;r2=1.2 was changed to r1%3D1.1%3Br2%3D1.2 at line 387: > > my %query = (); > if (defined($ENV{QUERY_STRING})) { > $ENV{QUERY_STRING} = uri_escape($ENV{QUERY_STRING}); > for my $p (split(/[;&]+/, $ENV{QUERY_STRING})) { [...] > commenting out the 'uri_escape' line makes cvsweb work again. > Up to you and/or debian maintainer to fix this, or is it my perl? That uri_escape() line does not exist in vanilla FreeBSD-CVSweb, so I guess it's a Debian addition and should be fixed there. It looks fundamentally broken to me; the only thing I can suggest is to remove it (instead of eg. trying to tweak the split() regexp below it to cope with the twice [1] escaped query string). [1] The QUERY_STRING environment variable should alredy be in URI encoded form. If it isn't, many things will most certainly break, and blindly re-encoding the whole of it before parsing the key=value pairs will not produce meaningful results. http://hoohoo.ncsa.uiuc.edu/cgi/env.html