Return-Path: Delivered-To: new-httpd-archive@hyperreal.org Received: (qmail 2665 invoked by uid 6000); 14 Jul 1998 19:43:44 -0000 Received: (qmail 2658 invoked from network); 14 Jul 1998 19:43:42 -0000 Received: from redfish.go2net.com (207.178.55.5) by taz.hyperreal.org with SMTP; 14 Jul 1998 19:43:42 -0000 Received: from marcs by redfish.go2net.com with smtp (Exim 1.82 #2) id 0ywAyN-0001ul-00; Tue, 14 Jul 1998 12:42:47 -0700 Date: Tue, 14 Jul 1998 12:42:47 -0700 (PDT) From: Marc Slemko X-Sender: marcs@redfish To: new-httpd@apache.org Subject: Re: [BUG] Win32 assert: sub_canonical_filename() called with szFile=="" In-Reply-To: <35ABB240.9E7035B2@algroup.co.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: new-httpd-owner@apache.org Precedence: bulk Reply-To: new-httpd@apache.org On Tue, 14 Jul 1998, Ben Laurie wrote: > > > This runs into problems in ap_os_canonical_filename where the code now blows > > > away trailing slashes. > > > > > > // Finally, a trailing slash(es) screws thing, so blow them away > > > for(nSlashes=0 ; d > b2 && d[-1] == '\\' ; --d,++nSlashes) > > > ; > > > /* XXXX this breaks '/' and 'c:/' cases */ > > > *d='\0'; > > > > Yup. And I did fix that part to leave "/" and "c:/" (where c is any > > drive; drives aren't restricted to letters, are they? letters and a few > > symbols I thought... although perhaps that was only DOS) (but didn't > > commit the fix), but it doesn't do much good because they still aren't > > applied properly, so then you could have the section but it would be > > ignored, which is a bad thing. > > Under what circumstances is it ignored? All circumstances as far as I am aware. At the moment, if you try a "" or "" it barfs with an assert because it strips the trailing '/'. If you fix the code so it doesn't strip tailing '/'s in that case, then the sections just don't appear to match anything. Obviously, there is some other bug in there. I think that not stripping the trailing '/'s off such entries is the right thing to do, but it is academic at this point because someone has to go through all the steps to see why it doesn't work and what needs to be done to make it work. But not for 1.3.1.