ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.26k stars 175 forks source link

Paths with spaces don't get escaped by default. Games fail to launch without user intervention. #10946

Open ghost opened 5 months ago

ghost commented 5 months ago

Your system information

Please describe your issue in as much detail as possible:

Expected: Diablo 2 launches after providing correct install paths. Happens: Steam runs program Diablo with argument II.exe https://gist.github.com/jakubbys/4586a502763dba0fa2e7c8fb15deb0b9

Steps for reproducing this issue:

  1. Launch a windows game installer.
  2. Change path of executable and launch CWD.
  3. Fails to launch.(part of diablo 2 lord of destruction drm is that the filename stays Diablo II.exe)
cybik commented 5 months ago

Adding to the ticket.

Installing a non-steam game to a path with spaces (example: Genshin Impact into Program Files) and then manually setting the launch executable to the GI launcher, results in having to add double-quotes at the start and end of the path manually in order for Steam to launch it. A workaround in this case is to install the launcher & game at the root of the WINE/Proton C: drive.

This could also be affecting the launch dir evaluation, but since the game can launch without in some cases, this is less testable.