From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 122672 invoked by alias); 11 Jan 2016 03:54:49 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 122648 invoked by uid 9078); 11 Jan 2016 03:54:48 -0000 Received: (qmail 122639 invoked by uid 89); 11 Jan 2016 03:54:47 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.6 required=5.0 tests=AWL,BAYES_50,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=Greetings, downloads, Downloads, honor X-Spam-User: qpsmtpd, 2 recipients X-HELO: pv33p04im-asmtp002.me.com Received: from pv33p04im-asmtp002.me.com (HELO pv33p04im-asmtp002.me.com) (17.143.181.11) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Mon, 11 Jan 2016 03:54:46 +0000 Received: from [192.168.1.3] (pool-71-248-165-182.bstnma.fios.verizon.net [71.248.165.182]) by pv33p04im-asmtp002.me.com (Oracle Communications Messaging Server 7.0.5.36.0 64bit (built Sep 8 2015)) with ESMTPSA id <0O0R009PSS6VOT20@pv33p04im-asmtp002.me.com>; Mon, 11 Jan 2016 03:54:33 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-01-11_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 clxscore=1015 suspectscore=1 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1510270003 definitions=main-1601110074 Content-type: text/plain; charset=us-ascii MIME-version: 1.0 (Mac OS X Mail 9.2 \(3112\)) Subject: Re: Question about incorrect System path from cygpath with case-sensitivity enabled From: Bryan Henry In-reply-to: <20160107201938.GG20447@calimero.vinschen.de> Date: Mon, 11 Jan 2016 09:38:00 -0000 Cc: corinna-cygwin@cygwin.com Content-transfer-encoding: quoted-printable Message-ID: References: <1710491599.20160102183319@yandex.ru> <20160107201938.GG20447@calimero.vinschen.de> To: cygwin@cygwin.com X-SW-Source: 2016-01/txt/msg00105.txt.bz2 Message-ID: <20160111093800.I2uNAEJnSCVQpZUlurBDazylReIwGCop3-alxuTI65s@z> Hi Corinna, Sorry for the delay getting back to you. I tested out the cygpath binary fr= om the latest snapshot and confirmed that it fixes my issue. Thank for you = making the change! [~/Downloads/cygwin-inst-20160109]$ cygpath -W -u /C/Windows [~/Downloads/cygwin-inst-20160109]$ cygpath-old -W -u /C/WINDOWS - Bryan > On Jan 7, 2016, at 3:19:38 PM, Corinna Vinschen wrote: >=20 > On Jan 2 18:33, Andrey Repin wrote: >> Greetings, Bryan Henry! >>=20 >>> I enabled (some time ago, not recently) case sensitivity on my Windows = 8.1 >>> system by setting the registry key mentioned in the FAQ here: >>> https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-case= sensitive >>=20 >>> Today, I updated Cygwin and noticed a message about a failed postinstall >>> script at the end. Here's the excerpt from setup.log.full showing >>> /etc/postinstall/base-files-mketc.sh exiting early: >>=20 >>> 2016/01/01 15:45:32 running: C:\cygwin\bin\bash.exe --norc --noprofile >>> "/etc/postinstall/base-files-mketc.sh" >>> Directory /C/WINDOWS/System32/drivers/etc does not exist; exiting >>> If directory name is garbage you need to update your cygwin package >>> 2016/01/01 15:45:32 abnormal exit: exit code=3D1 >>=20 >>> Since this was an existing installation, that postinstall script failing >>> isn't a big deal since the symlinks that it would normally create alrea= dy >>> exist, but I wanted to dig into why it's failing in the first place in = case >>> it is a symptom of something bigger. Taking a look at that script and t= rying >>> "/usr/bin/cygpath -S -u" for myself, I see now why it failed: >>=20 >>> [~]$ cygpath -S -u >>> /C/WINDOWS/System32 >>> [~]$ file `cygpath -S -u` >>> /C/WINDOWS/System32: cannot open `/C/WINDOWS/System32' (No such file or= directory) >>> [~]$ file /C/Windows/System32 >>> /C/Windows/System32: directory >>=20 >>> I get similar results from "cygpath -W". It seems that cygpath has not >>> picked up on the fact that the directory is really "Windows" and not >>> "WINDOWS", >>=20 >> cygpath uses system calls to return the directories you're asking for. >=20 > ...and those system calls return information which does not honor > case-sensitivity, unfortunately. >=20 >> If a system call return wrong case, cygpath can't do anything to amend i= t. >=20 > It can and it will, at least if the path is a local path. I just > applied a patch to cygpath to call another OS function to correct the > case of the path returned by GetSystemDirectory and friends. >=20 >> You have to fix your system first, then it will just work. >=20 > This is nonsense. It's not the user's fault that the OS returns paths > without honoring the case. Cygwin tries to support case-sensitivity > (https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-cases= ensitive) > and so it makes a lot of sense if cygpath tries to return system paths > using the correct case. >=20 > I just uploaded new developer snapshots to https://cygwin.com/snapshots/ > Please give cygpath from those snapshots a try. >=20 >=20 > Thanks, > Corinna >=20 > --=20 > Corinna Vinschen Please, send mails regarding Cygwin to > Cygwin Maintainer cygwin AT cygwin DOT com > Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple