https://bugs.winehq.org/show_bug.cgi?id=49498
Bug ID: 49498 Summary: In file-open dialog, selecting .lnk shortcut picks shortcut instead of going to target folder Product: Wine Version: 5.11 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: nyanpasu64@tuta.io Distribution: ---
In a Wine file-open dialog, if you double-click a shortcut to a folder (unsure about file), it sends the shortcut to the program instead of navigating to the folder.
OpenMPT is one app which expects you to open a .lnk file in a file-open dialog. The way I found this bug is:
- Install OpenMPT on Windows or Wine. - Open the View menu and click Setup. - Click the Keyboard tab, and click "Import Keys...".
If you double-click "More Keymaps", Windows would go to the .lnk target directory. But Wine returns the .lnk file from the file-open dialog.
Note that OpenMPT uses XP-style file dialogs on Wine because Wine's Vista-style file dialogs are terrible. https://github.com/OpenMPT/openmpt/blob/84428b3666d79d197a7bb9f3a9ece0b2ba28...
On Wine, both XP/Vista dialogs don't traverse the .lnk file and instead return the .lnk path. On Windows, both XP/Vista dialogs traverse the .lnk file.
MFC defines two types of dialogs with a similar C++ API. XP = Common File Dialog (I think), Vista = Common Item Dialog (COM-based).