X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Thu, 26 Feb 2009 10:19:43 +0100 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: Another long pathname question Message-ID: <20090226091943.GU18319@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <87f94c370902251558n2f671e39i9ac95d0b749a0514 AT mail DOT gmail DOT com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87f94c370902251558n2f671e39i9ac95d0b749a0514@mail.gmail.com> User-Agent: Mutt/1.5.19 (2009-02-20) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: 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 On Feb 25 18:58, Greg Freemyer wrote: > I just read the release email for 1.7.0 > > In part it says: > > - Fallout from the long path names: If the current working directory is > longer than 260 bytes, or if the current working directory is a virtual > path (like /proc, /cygdrive, //server), don't call native Win32 programs > since they don't understand these paths. > > I've done a fair amount of long path name testing in Vista / Win2008, > and I'd like to understand the above in more detail. It's a restriction of Win32 processes. The CWD is stored in the PEB (process environment block) of every process. It's stored as path as well as as handle. Unfortunately the CWD in the PEB is a static storage area of 520 bytes == 260 (MAX_PATH) wide characters. That's why no Win32 process can have a long path as CWD. See also http://msdn.microsoft.com/en-us/library/aa365530(VS.85).aspx Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- 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/