X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 039F8386EC3F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1621246362; bh=QA5ec0V6jVUTGUdz/28aQge2uptKCLh8uQW8jUCf1AQ=; h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=JP8MKKDnW74OGhblwhFKsi9PMTeZ43LML2tTB5Uc7Hu8ixzartYHqtAgJiwa2A9+e GIIDv9YfaJrdJ+LlA74qrXNrJzpTuB85eL8BH+2lWJlX1RfMPCBWFB9hPzvlHJkwxH LilEzzkQryw8wS1uzKFoJ5Mpl8QwuntIbfV0pqgE= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 05CD33857C7E Date: Mon, 17 May 2021 12:12:28 +0200 To: Jeremy Drake Subject: Re: realpath issue with native[strict] symlinks Message-ID: Mail-Followup-To: Jeremy Drake , cygwin AT cygwin DOT com, Orgad Shaneh References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-Provags-ID: V03:K1:D8qPs/moJOsze75hkZX2SPEBXoLs4anzKHxyYxclmdadEyZmE7W pThD4d8YASCZRVlv7dBVTr4RMZO8WFg4zya1QSrg6/K39LRhd74U1yRRPMrR9OXs4cnp350 thbNDLs9LJDyGpkHHEVlZHdmVKPJfuSqNTfgLcHifyA06+UsGbWgGQJefR8FxcLym+9OjtS E93VPAYCkhWlC7ia32ODA== X-UI-Out-Filterresults: notjunk:1;V03:K0:Hi7tFZBaKe8=:e/oM6sqgTcVkZwZuKGvoso o1emCjBGHcvbKrpgewo7Ny+9l0tKs0B60dD89dUTmOb2+IskawfL+GDP88pPUBOgqBJaxJUHR asRdQguJkbSTCJlg7meWeZR51QDRfxRVtdxqwyATOIxbPvYsOEAmlH2gHPtwJ5Btk24eH4U4j vm/UNUpDF+/Y+d9JHwzLXeYJBOWDq9Ugqv53WhNPw9BlLci/2dtwnNfyvjnZkZftVPk45wjiC mhJlE8sKE1BPCZFwFzoBm4IY2O2eSpEIvugCVy2Qu354lSGUYCZ6y/9TRWVAo600xu1AmX953 sm+A18l789cv3p2hB50G1ZnTR68yE+VPsHxGs5S455U8U7u7sXP6M0nZ/2IDHkK/jRkRIBmbs 8oOHcsWbvWO/7aQjnOf9yB2OxMQoUdSwAJh9uYViXhQN5O/8ONu9bjmo1aHX38D6Z5dK2zkmS bTO0ToauViqMnz4EqOnZI64rrfZtf9BQZ+2cvVo4uNGxuX95cxWSC7YN4WJuu/ZhaIrKgixQo BVDP8rTLIQFnKG9UCbktGg= X-Spam-Status: No, score=-100.3 required=5.0 tests=BAYES_00, GOOD_FROM_CORINNA_CYGWIN, KAM_DMARC_NONE, KAM_DMARC_STATUS, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NEUTRAL, 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 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Corinna Vinschen via Cygwin Reply-To: cygwin AT cygwin DOT com Cc: Corinna Vinschen , cygwin AT cygwin DOT com, Orgad Shaneh Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: cygwin-bounces AT cygwin DOT com Sender: "Cygwin" On May 14 21:12, Jeremy Drake via Cygwin wrote: > 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. Sorry, but there's only this or that, not both. Either we revert the entire change, including the native shortcut stuff, or we do it completely and fully, including handling virtual drives as symlinks. The alternative is to rewrite the path handling from scratch, which is a massive undertaking I simply don't have the time for. MAX_PATH is not of big concern anymore thiese days. More recent Windows 10 allows long path names in the ANSI interface as well. If you're using dumb tools not being able to cope with such long paths, then use a wrapper converting the affected paths back to a drive letter. It might also be helpful to put matching functionality into the cygpath tool. Patches are welcome. Corinna -- 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