From 4fea6eeaab04af6a9ed5a0449d75dcc7e71eba2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Thu, 18 Jan 2024 00:29:27 +0100 Subject: [PATCH] Try a compromise with the paths --- Core/PSPLoaders.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Core/PSPLoaders.cpp b/Core/PSPLoaders.cpp index 0d30828fe8..e40e466358 100644 --- a/Core/PSPLoaders.cpp +++ b/Core/PSPLoaders.cpp @@ -427,7 +427,14 @@ bool Load_PSP_ELF_PBP(FileLoader *fileLoader, std::string *error_string) { pspFileSystem.SetStartingDirectory(ms_path); } - std::shared_ptr fs = std::shared_ptr(new DirectoryFileSystem(&pspFileSystem, full_path.NavigateUp(), FileSystemFlags::SIMULATE_FAT32 | FileSystemFlags::CARD)); + Path dir; + if (full_path.Type() == PathType::CONTENT_URI) { + dir = full_path.NavigateUp(); + } else { + dir = Path(path); + } + + std::shared_ptr fs = std::shared_ptr(new DirectoryFileSystem(&pspFileSystem, dir, FileSystemFlags::SIMULATE_FAT32 | FileSystemFlags::CARD)); pspFileSystem.Mount("umd0:", fs); std::string finalName = ms_path + file;