diff options
| author | oldmud0 <oldmud0@users.noreply.github.com> | 2021-06-06 23:27:30 -0500 |
|---|---|---|
| committer | oldmud0 <oldmud0@users.noreply.github.com> | 2021-06-06 23:27:30 -0500 |
| commit | e576a8b23d1dec48553ef4a2de3bf5c7c6925633 (patch) | |
| tree | af18775ac1b05fef19d457f61f125c8226fdb7ef /src/path_functions.cpp | |
| parent | 9ecd7c453c3b34a976869e517f9414a4b91fdb0f (diff) | |
Fix bug with case-sensitive vpath lookup
Diffstat (limited to 'src/path_functions.cpp')
| -rw-r--r-- | src/path_functions.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/path_functions.cpp b/src/path_functions.cpp index 4dc1c62d..b15cc90b 100644 --- a/src/path_functions.cpp +++ b/src/path_functions.cpp @@ -242,12 +242,13 @@ QString AOApplication::get_real_path(const VPath &vpath) { for (const QString &base : bases) { QDir baseDir(base); - const QString path = baseDir.absoluteFilePath(vpath.toQString()); + QString path = baseDir.absoluteFilePath(vpath.toQString()); if (!path.startsWith(baseDir.absolutePath())) { qWarning() << "invalid path" << path << "(path is outside vfs)"; break; } - if (exists(get_case_sensitive_path(path))) { + path = get_case_sensitive_path(path); + if (exists(path)) { asset_lookup_cache.insert(qHash(vpath), path); return path; } @@ -274,12 +275,13 @@ QString AOApplication::get_real_suffixed_path(const VPath &vpath, for (const QString &base : bases) { for (const QString &suffix : suffixes) { QDir baseDir(base); - const QString path = baseDir.absoluteFilePath(vpath.toQString() + suffix); + QString path = baseDir.absoluteFilePath(vpath.toQString() + suffix); if (!path.startsWith(baseDir.absolutePath())) { qWarning() << "invalid path" << path << "(path is outside vfs)"; break; } - if (exists(get_case_sensitive_path(path))) { + path = get_case_sensitive_path(path); + if (exists(path)) { asset_lookup_cache.insert(qHash(vpath), path); return path; } |
