WB ignores "duplicates" on case-sensitive filesystems

A forum for general AmigaOS 4.x support questions that are not platform-specific
Post Reply
chris
Posts: 552
Joined: Sat Jun 18, 2011 11:05 am
Contact:

WB ignores "duplicates" on case-sensitive filesystems

Post by chris »

I've discovered a bug in Workbench. When used with a case-sensitive filesystem, if more than one object has the same name (ignoring case), Workbench will only ever show one of them. The dir command in the Shell will show both.

This is easier to explain with a screenshot, so in this example I have two drawers, one called "test" and the other "Test". Workbench only shows "Test", but dir shows both "Test" and "test":

Image

You can see this behaviour quite easily using FTPMount and creating the two drawers or copying two files in and giving them names that only differ by case. It is not an FTPMount bug as I see exactly the same thing with the WebDAV handler I'm playing around with (in fact that FTP share in the screenshot is also a WebDAV share, so the data being looked at is identical with both filesystems)
User avatar
Slayer
Beta Tester
Beta Tester
Posts: 851
Joined: Tue Dec 21, 2010 4:19 am
Location: New Zealand

Re: [BUG] WB ignores "duplicates" on case-sensitive filesyst

Post by Slayer »

Hi there Chris

Perhaps you should have posted this in a more specific section unless you're saying you've confirmed it on all platforms running AmigaOS4.x ;)

I'll confirm this behavior when I get home from work and enter it in bugzilla unless someone beats me too it

I used to run a case sensitive partition on occasion since some mud codebases I used to compile required it

For background information can you state what revision of AOS4 you are running and on what platform OR platforms you've discovered this on?
~Yes I am a Kiwi, No, I did not appear as an extra in 'Lord of the Rings'~
1x AmigaOne X5000 2.0GHz 2gM RadeonR9280X AOS4.x
3x AmigaOne X1000 1.8GHz 2gM RadeonHD7970 AOS4.x
chris
Posts: 552
Joined: Sat Jun 18, 2011 11:05 am
Contact:

Re: [BUG] WB ignores "duplicates" on case-sensitive filesyst

Post by chris »

Slayer wrote:Perhaps you should have posted this in a more specific section unless you're saying you've confirmed it on all platforms running AmigaOS4.x ;)

I'll confirm this behavior when I get home from work and enter it in bugzilla unless someone beats me too it

I used to run a case sensitive partition on occasion since some mud codebases I used to compile required it

For background information can you state what revision of AOS4 you are running and on what platform OR platforms you've discovered this on?
Well, admittedly I haven't checked all platforms, but it isn't a hardware specific issue... :-)

I spotted it on a SAM440EP running OS4.1u4

Thanks
Chris
User avatar
tonyw
AmigaOS Core Developer
AmigaOS Core Developer
Posts: 1438
Joined: Wed Mar 09, 2011 1:36 pm
Location: Sydney, Australia

Re: [BUG] WB ignores "duplicates" on case-sensitive filesyst

Post by tonyw »

It's not necessarily a WB bug. WB only displays what it receives from the ExamineDir() DOS call. FTPMount is supplying that information, so it may be FTPMount that is the cause.

In the Shell case, C:dir is reading the remote directory and printing the results (and dir is very old) so it may be using a very different means of reading and interpreting the dir contents.

What is the remote filesystem? Is it Loonix?
cheers
tony
User avatar
Slayer
Beta Tester
Beta Tester
Posts: 851
Joined: Tue Dec 21, 2010 4:19 am
Location: New Zealand

Re: WB ignores "duplicates" on case-sensitive filesystems

Post by Slayer »

Okay, something is going on here I formatted an extra partition like so:

sfsformat drive dhb: name B CASESENSITIVE NORECYLED

so no FTPMount

Running a clean AOS4.1.5 X1000 installation

I'll do a bit of research and see what we can put it against
Testtest.jpg
(71.09 KiB) Downloaded 811 times
Bug # 7660
~Yes I am a Kiwi, No, I did not appear as an extra in 'Lord of the Rings'~
1x AmigaOne X5000 2.0GHz 2gM RadeonR9280X AOS4.x
3x AmigaOne X1000 1.8GHz 2gM RadeonHD7970 AOS4.x
chris
Posts: 552
Joined: Sat Jun 18, 2011 11:05 am
Contact:

Re: [BUG] WB ignores "duplicates" on case-sensitive filesyst

Post by chris »

tonyw wrote:It's not necessarily a WB bug. WB only displays what it receives from the ExamineDir() DOS call. FTPMount is supplying that information, so it may be FTPMount that is the cause.

In the Shell case, C:dir is reading the remote directory and printing the results (and dir is very old) so it may be using a very different means of reading and interpreting the dir contents.
With my handler I have debug in, so I can see that both are calling ACTION_EXAMINE_OBJECT/ACTION_EXAMINE_NEXT, there's not much else they can call at the filesystem level (especially when the 64-bit DOS packets aren't implemented :)). Workbench loves creating locks on files, which could be the cause, except as we are getting it on three different handlers/filesystems (with Slayer's SFS test) it seems incredibly unlikely to be anything at that low level.

It could be dos.library, ExamineDir() vs Examine()/ExNext() I guess.
What is the remote filesystem? Is it Loonix?
Yep.

@Slayer
Thanks for confirming!
Post Reply