libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.06k stars 1.81k forks source link

RetroArch adds wrong whitespace/breaks in directory settings #12377

Open tarikalmashni opened 3 years ago

tarikalmashni commented 3 years ago

This bug appeared in Android. When going to Settings -> Directories and change on of the entries to something like this

"/storage/emulated/0/hos_data/RetroArch Assets/thumbnails"

And save the configuration, RetroArch won't start again afterwards but crashes instead.

I then headed to the config file with ES File Explorer PRO (it has a built in text editor) only to find that it added a white space after hos_data:

"/storage/emulated/0/hos_data /RetroArch Assets/thumbnails"

Since ES doesn't have a search/replace feature I installed a standalone text editor and there it appears that there are line breaks instead:

"/storage/emulated/0/hos_data /RetroArch Assets/thumbnails"

I don't know what's really there without a PC but I edited all those lines to remove the breaks and then RetroArch starts again. However it still won't recognize the directories. If I go to load content and start at the downloads folder which I set to "/storage/emulated/0/hos_data/RetroArch Assets/downloads" it won't list the *.gba files I placed there. Instead I found out that if RetroArch writes to one of those directories (like it does for the achievement icons) it - again - does that to /hos_data / (with a whitespace) and I then have two hos_data folders in emulated/0/ (one seems to have the whitespace although ES File Explorer won't let me see the whitespace).

Background info: I did all this on my Nintendo Switch. My aim was to access my savegames and other assets from both Instances of RetroArch, that one on Horizon OS and tha one on Switchroot Android. To achieve that I rooted Switchroot Android with Magisk and used Script Manager to apply a mount script on boot that mounts the Horizon FAT32 partition into that hos_data folder.

tarikalmashni commented 3 years ago

Please try to fix this. It's so annoying. I tried to rename the folder from "RetroArch Assets" to "ra" and mounted the FAT32 partition to "hos" instead of "hos_data" but it's still adding the whitespace so it's "hos /ra" instead of "hos/ra".

tarikalmashni commented 3 years ago

Let me know if I can help with some research.

LibretroAdmin commented 2 years ago

PRs welcome I guess.

Does this really happen? I find that hard to believe.