From 480a57cf037a46f176128e6c94aa5616fcf704a3 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Tue, 17 Feb 2026 23:59:40 -0600 Subject: Fix Wine prefix deployment, INI handling, and data directory paths MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix data directory path to use ~/.var/app/com.fluorine.manager consistently (was ~/.local/share/fluorine in committed code) - Fix VFS helper path in fuseconnector.cpp to use fluorineDataDir() - Fix localAppFolder() to resolve Wine prefix AppData/Local on Linux instead of returning XDG ~/.local/share - Add localAppName() virtual method for correct AppData folder mapping (Enderal→"enderal", Nehrim→"Oblivion") - Fix mergeTweak() to use direct INI parser instead of QSettings which corrupts backslashes and URL-encodes spaces in keys - Make resolveWineDataDirName() more robust with existence checks and fallback chain (documentsDirectory → gameShortName → gameName) - Add comprehensive debug logging throughout Wine prefix deployment - Fix INI case handling: copy instead of symlink for case-mismatched INIs, ensure both proper-case and lowercase aliases exist - Remove native build script (Flatpak only) Co-Authored-By: Claude Opus 4.6 --- libs/usvfs/src/shared/directory_tree.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libs/usvfs/src/shared/directory_tree.cpp') diff --git a/libs/usvfs/src/shared/directory_tree.cpp b/libs/usvfs/src/shared/directory_tree.cpp index 34cc797..33d7ae1 100644 --- a/libs/usvfs/src/shared/directory_tree.cpp +++ b/libs/usvfs/src/shared/directory_tree.cpp @@ -34,6 +34,10 @@ fs::path::iterator nextIter(const fs::path::iterator& iter, void advanceIter(fs::path::iterator& iter, const fs::path::iterator& end) { + if (iter == end) { + return; + } + ++iter; while (iter != end && (iter->wstring() == L"/" || iter->wstring() == L"\\" || iter->wstring() == L".")) -- cgit v1.3.1