aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorFilippos Karapetis2015-01-18 21:30:07 +0200
committerFilippos Karapetis2015-01-18 21:30:07 +0200
commit7c23eae1027d242c9169b791d99d5f22e3159816 (patch)
tree4585a507d274b0544e1e8cac74f2dcf4cad36987 /engines
parentcac7be425a92781341e3dc4b6882d42b4f17f9f3 (diff)
downloadscummvm-rg350-7c23eae1027d242c9169b791d99d5f22e3159816.tar.gz
scummvm-rg350-7c23eae1027d242c9169b791d99d5f22e3159816.tar.bz2
scummvm-rg350-7c23eae1027d242c9169b791d99d5f22e3159816.zip
ZVISION: Fix path handling in case-sensitive file systems (bug #6775)
A regression from commit d70503cc98. Thanks to wjp for bisecting.
Diffstat (limited to 'engines')
-rw-r--r--engines/zvision/file/search_manager.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/zvision/file/search_manager.cpp b/engines/zvision/file/search_manager.cpp
index 9f709dd0a1..1ae1ff71ae 100644
--- a/engines/zvision/file/search_manager.cpp
+++ b/engines/zvision/file/search_manager.cpp
@@ -183,6 +183,16 @@ bool SearchManager::loadZix(const Common::String &name) {
path.deleteChar(0);
if (path.size() && path.hasSuffix("/"))
path.deleteLastChar();
+
+ // Handle paths in case-sensitive file systems (bug #6775)
+ if (path.size()) {
+ for (Common::List<Common::String>::iterator it = _dirList.begin(); it != _dirList.end(); ++it) {
+ if (path.equalsIgnoreCase(*it)) {
+ path = *it;
+ break;
+ }
+ }
+ }
if (path.matchString("*.zfs", true)) {
arc = new ZfsArchive(path);