This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: sed seems to force UC filename on Mixed 8.3 filenames on FAT32


On 2018-03-04 10:05, cyg Simple wrote:
> On 3/4/2018 11:14 AM, Brian Inglis wrote:
>> On 2018-03-04 03:09, Corinna Vinschen wrote:
>>> On Mar  3 11:14, Brian Inglis wrote:
>>>> On 2018-03-03 01:36, Fergus Daly wrote:
>>>>>>> Run stat on original and converted files.
>>>>>
>>>>> OK. I get this:
>>>>>
>>>>> ~> stat /j/PStart.xml
>>>>>   File: /j/PStart.xml
>>>>>   Size: 7233            Blocks: 8          IO Block: 65536  regular file
>>>>> Device: a6418e7fh/2789314175d   Inode: 7206475022584976007  Links: 1
>>>>> Access: (0644/-rw-r--r--)  Uid: (197609/ fergusd)   Gid: (197609/ fergusd)
>>>>> Access: 2018-03-03 00:00:00.000000000 +0000
>>>>> Modify: 2018-03-02 11:50:12.000000000 +0000
>>>>> Change: 2018-03-02 11:50:12.000000000 +0000
>>>>>  Birth: 2018-03-02 09:26:44.060000000 +0000
>>>>>
>>>>> ~> dos2unix.exe /j/PStart.xml
>>>>> dos2unix: converting file /j/PStart.xml to Unix format...
>>>>>
>>>>> ~> stat /j/PSTART.XML
>>>>>   File: /j/PSTART.XML
>>>>>   Size: 6943            Blocks: 8          IO Block: 65536  regular file
>>>>> Device: a6418e7fh/2789314175d   Inode: 7206475022584976007  Links: 1
>>>>> Access: (0644/-rw-r--r--)  Uid: (197609/ fergusd)   Gid: (197609/ fergusd)
>>>>> Access: 2018-03-03 00:00:00.000000000 +0000
>>>>> Modify: 2018-03-03 08:27:16.000000000 +0000
>>>>> Change: 2018-03-03 08:27:16.000000000 +0000
>>>>>  Birth: 2018-03-03 08:27:15.210000000 +0000
>>>>>
>>>>> Does that help at all?
>>>>>
>>>>> It's not so much the behaviour on FAT32, which I could put up with as
>>>>> a filesystem pehenomenon if it had always been the case: but it's just
>>>>> started in the past few days. Can't think what has been updated that
>>>>> would cause this change. Previously sed and dos2unix which I use
>>>>> constantly (and others) did NOT change the case of the filename.
>>>>
>>>> Should only be possible if Std C rename was changed in newlib/Cygwin1.dll
>>>> updates
>>>
>>> No changes there, certainly not renaming the file to all uppercase.
>>
>> Not suggesting any deliberate impact from newlib/Cygwin but any change could
>> result in different Windows calls in the emulation layer, or the cause could be
>> as in the rest of the sentence trimmed:
>>
>> ..."or operation on FAT32 was changed by Windows updates."
> 
> IIRC, the original FAT only allowed uppercase file names.  Maybe some
> emulation switch is on as a result of such updates at the Windows level.

That's FAT12/16 (floppy/HD) - FAT32, exFAT support VFAT, and case and other
attributes should be retained on {Move,Replace}File{Ex,...}W, from MS docs.
The question may be what holds for ...A functions: those should be wrappers
calling the ...W functions, or the underlying functions.
Sometimes MS add new functions or change parameters you need to use to maintain
legacy behaviour after OS changes.

"Never attribute to malice that which is adequately explained by stupidity."
	- Hanlon's Razor
"90% of everything is crap."
	- Sturgeon's Law
Cygwin provides and supports the other 10% of Unix! ;^>

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

--
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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]