-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Update process execution flow for Linux #25206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
0cb7dc3
to
3d863dd
Compare
@Gymnasiast I guess you'll want to test GOG stuff |
You seem to be copying code wholesale from SDL, as well as changing code to use C strings and arrays. And it seems that paths are no longer properly escaped, though I haven’t been able to check that properly due to the aforementioned things. I’m not sure if this is a good solution to this problem. |
They don't need to and even they mustn't. We pass them on to the child process directly and not via shell. Escaping them would result in the file picker looking for escaped names verbatim. |
Previously zenity/kdialog were launched in a way that would prevent events from getting pumped to the new application in some scenarios. This new approach, mimicked from https://github.com/libsdl-org/SDL/blob/9859c051781771015356e31f941bab40a763bea9/src/video/wayland/SDL_waylandmessagebox.c#L40-L75 fixes this problem for compositors where it used to be a problem. In particular, this fixes the system dialog not launching on the Steam Deck.
3d863dd
to
66d278c
Compare
Yes, but this is pretty much the standard way to do this, so it's not really exclusive to SDL and they don't anything novel here. Take a look at I recall writing such code some 15 years ago, back when I still believed bazaar was superior to git. |
- Fix: [#25173] Desync when placing a park entrance in multiplayer. | ||
- Fix: [#25179] The LIM Launched Roller Coaster inline twists have incorrect wooden support clearance heights (original bug). | ||
- Fix: [#25201] Ride list sort order can be unstable when sorted in descending order. | ||
- Fix: [#25206] System file picker does not show up on the Steam Deck. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needs moving to the v0.4.28 section.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested this and it gets stuck.
What I did was:
- Clear out the
game_path
config option. - Launch the game
- Select the option "I have the GOG installer download"
- Select it.
- It issues the command, but gets stuck.
This happens with both Zenity and Kdialog.
The last thing that gets written to stdout is:
INFO[/home/michael/Code/OpenRCT2/OpenRCT2/src/openrct2/platform/Platform.Posix.cpp:144 (Execute)]: Executing command: innoextract /home/michael/Downloads/Spellen/RCT2 en OpenRCT2/Installers/GOG, oud/setup_rollercoaster_tycoon_2_triple_thrill_pack_2.01.043_(17987).exe --exclude-temp --output-dir /home/michael/.config/OpenRCT2/rct2
Previously zenity/kdialog were launched in a way that would prevent events from getting pumped to the new application in some scenarios.
This new approach, mimicked from
https://github.com/libsdl-org/SDL/blob/9859c051781771015356e31f941bab40a763bea9/src/video/wayland/SDL_waylandmessagebox.c#L40-L75 fixes this problem for compositors where it used to be a problem.
In particular, this fixes the system dialog not launching on the Steam Deck.