[Bug 39811] New: GetLongPathName not working on case insensitive filesystems when short path is passed

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Dec 18 04:59:52 CST 2015


https://bugs.winehq.org/show_bug.cgi?id=39811

            Bug ID: 39811
           Summary: GetLongPathName not working on case insensitive
                    filesystems when short path is passed
           Product: Wine
           Version: 1.7.49
          Hardware: x86
                OS: Mac OS X
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ntdll
          Assignee: wine-bugs at winehq.org
          Reporter: piotr.caban at gmail.com

When short path is passed to GetLongPathName on case insensitive file system
(and it's not vfat) it will fail. So far I have only confirmed the issue on Mac
(when both read_directory_getattrlist and read_directory_stat is used). But I
think there will be similar problem if case insensitive FS is used on Linux.

It's a regression that breaks some functionality in Quicken 2013.

It's caused by following commits:
 - read_directory_getattrlist: 5c98448aa3acb9bac40a0afa28ffbee3001081d0
 - read_directory_stat: 2f0febe60a9f0b29840fc8d60679a8585b788ad5

Steps to reproduce the problem (on case insensitive file system):
touch ~/.wine/drive_c/somelongname

char short_path[256], path2[256];
printf("%x\n", GetShortPathNameA("c:\\somelongname", path, sizeof(path)));
printf("%s\n", path);
printf("%x\n", GetLongPathNameA(path, path2, sizeof(path2));
printf("%s\n", path2);

Output:
b
c:\SOME~LJ0
0

Correct output will be following:
b
c:\SOME~LJ0
f
c:\somelongname

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list