Opened 18 years ago

Closed 18 years ago

Last modified 5 years ago

#2564 closed defect (fixed)

Mixed case pathnames broken

Reported by: lordhoto Owned by: fingolfin
Priority: normal Component: Common
Version: Keywords:
Cc: Game:



since some time now (I think since one of those latest common/file.cpp changes from Fingolfin) mixed case paths like: /home/loom/files/ScummVM/MI2 are broken. Now the file class isn't able to open those any longer, if I change all to lowercase it works perfectly, but I think at least here mixed case should be allowed (like it was before).

// Johannes

Ticket imported from: #1470892. Ticket imported from: bugs/2564.

Change History (7)

comment:1 by fingolfin, 18 years ago

Could you be a bit more specific? I am using mixed case paths extensively (i.e. *all* of my games are in locations with mixed case paths), w/o any problems.

comment:2 by fingolfin, 18 years ago

P.S.: Note that I am on a system which ignores case in filenames. Hence I need to know more details on precise usage examples where things work / don't work if you expect me to look into this. Otherwise, somebody else with access to a system which is case sensitive needs to look into this. The code in common/ file.cpp is pretty straight forward, IMO.

comment:3 by lordhoto, 18 years ago

Well I'm on Linux, it fails because all paths are converted to lowercase in File::open (I think, didn't look that carefully yet), It seems that it got broken with revision 21858. Example: I specify extrapath as: "/home/loom/files/ScummVM/extra", I also have exactly that pathname, but it doesn't find any files in it, because it tries all characters in lowercase it seems. Worked perfectly before that revision. I hope it's clear now...

comment:4 by fingolfin, 18 years ago

Urgh. There was a bug in String::toLowercase which probably was the cause of the problem. I.e. the code in file.cpp seems to be right... please try again.

comment:5 by lordhoto, 18 years ago

Resolution: fixed
Status: newclosed

comment:6 by lordhoto, 18 years ago

Ok works again! Thanks for fixing ;) I'll close this then.

comment:7 by digitall, 5 years ago

Component: --Unset--Common
Note: See TracTickets for help on using tickets.