delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2004/02/17/16:07:02

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Tue, 17 Feb 2004 16:06:28 -0500
From: Christopher Faylor <cgf-no-personal-reply-please AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: New snapshot available which *may* fix unzip long filenames problem
Message-ID: <20040217210628.GB27861@redhat.com>
Mail-Followup-To: cygwin AT cygwin DOT com
References: <20040217201833 DOT GA26980 AT redhat DOT com> <20040217205652 DOT GA314375 AT Worldnet>
Mime-Version: 1.0
In-Reply-To: <20040217205652.GA314375@Worldnet>
User-Agent: Mutt/1.4.1i
X-IsSubscribed: yes
Reply-To: cygwin AT cygwin DOT com

On Tue, Feb 17, 2004 at 03:56:52PM -0500, Pierre A. Humblet wrote:
>On Tue, Feb 17, 2004 at 03:18:33PM -0500, Christopher Faylor wrote:
>> I've created a new snapshot which incorporates Pierre's much appreciated
>> research into the unzip problem.
>> 
>> Thanks to Pierre and Igor for looking into things at this depth.
>> 
>> I'm rather torn between fixing build_fh_name and keeping the destructor.
>> The destructor is cleaner but slower and its in a part of the code that
>> gets called *a lot*.
>> 
>> If it works, I'll probably keep the destructor around for 1.5.8 and
>> revisit in some later cygwin version.
>
>Good plan. After looking into it, I now think we could get rid of the
>normalized path storage entirely. It's mostly used in get_name(), which is
>90% for printf(). A large part of the remaining 10% could use
>get_win32_name instead (and be faster). A few oddball cases need to be
>looked into.

Using the win32_name causes strange side effects.  A win32 name is not
always equivalent to a unix name.  You lose state.  I just fixed a
problem with this in stat recently.  I initially fixed it by using the
unix name but then correctly fixed it by passing the fhandler pointer
around since that ended up doing many operations only once.

Eventually, moving everything to use fhandler_* could get rid of a
requirement to store names at all, although we probably still want to
keep the win32 name.

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019