X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 468D13851C2B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1621051974; bh=Sg9LkgQeiyARJ+kE2La4q6CsB4D12Uea1+UepWcx+YY=; h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=TuK15ifIA89SL9lsOT5xuYOefhamecjUjxrqgRjfsWtGTZ7ABl3ccapBVGXzR70SC uP2HoI8H04HXOtVhW8jeH2pszz3x6VOBV/Q6BS5chaPb9B7CUVD3/FqkYnGuezOa27 +nWjlFngvsNk050sRL1CAT4ENuAif0RyN8eXGEL4= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 56A473851C2B Date: Fri, 14 May 2021 21:12:46 -0700 (Pacific Daylight Time) To: cygwin AT cygwin DOT com Subject: realpath issue with native[strict] symlinks Message-ID: User-Agent: Alpine 2.22 (WNT 394 2020-01-19) X-X-Sender: jeremyd AT mail231 DOT csoft DOT net MIME-Version: 1.0 X-Spam-Status: No, score=-5.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , From: Jeremy Drake via Cygwin Reply-To: Jeremy Drake Cc: Orgad Shaneh Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Cygwin" I apologize for not replying to the message properly, I am not subscribed and am copy-pasting from web archive. On Sat, May 8, 2021 at 12:20 AM Corinna Vinschen wrote: > The changes have a behavioral change, but I think this is for the > better: Virtual drives are not treated as drives anymore, but as > symlinks. Given they are just pointers to other drives or directories, > tha't much closer to reality. I. e., in case of my above virtual drive > T:, what you'll see in the /cygdrive dir (unless your cygdrive prefix is > / only) is this: I am concerned about this behavior. The reason I was using subst to begin with was that some build tools encode the full path in their filenames, resulting in hitting MAX_PATH-related issues for not horribly long/deep paths. With this change, running a native Windows process (MinGW-w64) from a subst drive results in what it sees as the CWD being 'dereferenced' as though subst was not used, defeating the path-shortening purpose. For instance, using your example mapping: > $ ls -lG /cygdrive > total 16 > d---r-x---+ 1 TrustedInstaller 0 Apr 29 21:07 c > drwxr-xr-x 1 corinna 0 Dec 31 1979 e > lrwxrwxrwx 1 corinna 32 May 6 20:43 t -> /cygdrive/c/cygwin64/home/corinna/tmp Prior to these changes would show $ cd /cygdrive/t && cmd /c cd T:\ But after these changes would show $ cd /cygdrive/t && cmd /c cd C:\cygwin64\home\corinna\tmp This path could well be long enough to trigger build issues for certain MINGW-packages. Sorry to be a nuisance... -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple