Skip to content

Find keyboard settings beside extensionless executables - #772

Merged
mstan merged 1 commit into
masterfrom
fix/keybinds-extensionless-exe-752
Oct 27, 2026
Merged

mstan merged 1 commit into
masterfrom
fix/keybinds-extensionless-exe-752

Conversation

@mstan

@mstan mstan commented Oct 26, 2026

Copy link
Copy Markdown
Member

An extensionless Linux executable path was treated as a directory, so the adjacent keybinds.ini was never loaded. Resolve an existing directory as a directory and otherwise derive the executable's parent; explicit trailing separators remain directory paths. This also handles existing directories with dots in their names.

Fixes #752. Tracking: beads-67cr.

Validation: the actual keyboard/input fixture fails on the old implementation and passes with this fix on Windows/GCC/SDL3 and Linux/cc/SDL3. Coverage includes an extensionless executable, adjacent first-run INI creation, configured W → Up input, .exe paths, dotted directories, explicit directory paths, persistence/reload, and Escape suppression. The combined Release runtime builds, and all 16 selected regression tests pass at dd9a4ad. No owner saves/settings were used.

@mstan
mstan merged commit 65bcae7 into master Oct 27, 2026
1 check passed
tetrisgm pushed a commit to tetrisgm/psxrecomp that referenced this pull request Oct 27, 2026
…ix/keybinds-extensionless-exe-752

Find keyboard settings beside extensionless executables
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Linux builds never read keybinds.ini: derive_ini_path() takes an extensionless executable for a directory

1 participant