Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , 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 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 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 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/