EnginePaths::resolve encoding fix

This commit is contained in:
MihailRis 2024-01-31 15:25:59 +03:00
parent 4d6e4c8b87
commit 6c47719351

View File

@ -91,31 +91,31 @@ void EnginePaths::setContentPacks(std::vector<ContentPack>* contentPacks) {
fs::path EnginePaths::resolve(std::string path) { fs::path EnginePaths::resolve(std::string path) {
size_t separator = path.find(':'); size_t separator = path.find(':');
if (separator == std::string::npos) { if (separator == std::string::npos) {
return fs::path(path); return fs::u8path(path);
} }
std::string prefix = path.substr(0, separator); std::string prefix = path.substr(0, separator);
std::string filename = path.substr(separator+1); std::string filename = path.substr(separator+1);
if (prefix == "res" || prefix == "core") { if (prefix == "res" || prefix == "core") {
return resources/fs::path(filename); return resources/fs::u8path(filename);
} }
if (prefix == "user") { if (prefix == "user") {
return userfiles/fs::path(filename); return userfiles/fs::u8path(filename);
} }
if (prefix == "world") { if (prefix == "world") {
return worldFolder/fs::path(filename); return worldFolder/fs::u8path(filename);
} }
if (contentPacks) { if (contentPacks) {
for (auto& pack : *contentPacks) { for (auto& pack : *contentPacks) {
if (pack.id == prefix) { if (pack.id == prefix) {
return pack.folder/fs::path(filename); return pack.folder/fs::u8path(filename);
} }
} }
} }
return fs::path("./"+filename); return fs::u8path("./"+filename);
} }
ResPaths::ResPaths(fs::path mainRoot, std::vector<fs::path> roots) ResPaths::ResPaths(fs::path mainRoot, std::vector<fs::path> roots)