[Scummvm-cvs-logs] SF.net SVN: scummvm: [22461] scummvm/trunk/common

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Sat May 13 11:29:13 CEST 2006


Revision: 22461
Author:   fingolfin
Date:     2006-05-13 11:14:23 -0700 (Sat, 13 May 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=22461&view=rev

Log Message:
-----------
Fix for bug #1483213

Modified Paths:
--------------
    scummvm/trunk/common/file.cpp
    scummvm/trunk/common/file.h
Modified: scummvm/trunk/common/file.cpp
===================================================================
--- scummvm/trunk/common/file.cpp	2006-05-13 18:10:29 UTC (rev 22460)
+++ scummvm/trunk/common/file.cpp	2006-05-13 18:14:23 UTC (rev 22461)
@@ -111,16 +111,16 @@
 	addDefaultDirectoryRecursive(dir, 1);
 }
 
-void File::addDefaultDirectoryRecursive(const String &directory, int level) {
+void File::addDefaultDirectoryRecursive(const String &directory, int level, const String &prefix) {
 	FilesystemNode dir(directory);
-	addDefaultDirectoryRecursive(dir, level);
+	addDefaultDirectoryRecursive(dir, level, prefix);
 }
 
 void File::addDefaultDirectory(const FilesystemNode &directory) {
 	addDefaultDirectoryRecursive(directory, 1);
 }
 
-void File::addDefaultDirectoryRecursive(const FilesystemNode &dir, int level) {
+void File::addDefaultDirectoryRecursive(const FilesystemNode &dir, int level, const String &prefix) {
 	if (level <= 0)
 		return;
 
@@ -146,12 +146,14 @@
 
 	for (FSList::const_iterator file = fslist.begin(); file != fslist.end(); ++file) {
 		if (file->isDirectory()) {
-			addDefaultDirectoryRecursive(file->path(), level - 1);
+			addDefaultDirectoryRecursive(file->path(), level - 1, prefix + file->displayName() + "/");
 		} else {
-			String lfn = file->displayName();
+			String lfn(prefix);
+			lfn += file->displayName();
 			lfn.toLowercase();
-			if (!_filesMap->contains(lfn))
+			if (!_filesMap->contains(lfn)) {
 				(*_filesMap)[lfn] = file->path();
+			}
 		}
 	}
 }

Modified: scummvm/trunk/common/file.h
===================================================================
--- scummvm/trunk/common/file.h	2006-05-13 18:10:29 UTC (rev 22460)
+++ scummvm/trunk/common/file.h	2006-05-13 18:14:23 UTC (rev 22461)
@@ -53,10 +53,10 @@
 	};
 
 	static void addDefaultDirectory(const String &directory);
-	static void addDefaultDirectoryRecursive(const String &directory, int level = 4);
+	static void addDefaultDirectoryRecursive(const String &directory, int level = 4, const String &prefix = "");
 
 	static void addDefaultDirectory(const FilesystemNode &directory);
-	static void addDefaultDirectoryRecursive(const FilesystemNode &directory, int level = 4);
+	static void addDefaultDirectoryRecursive(const FilesystemNode &directory, int level = 4, const String &prefix = "");
 
 	static void resetDefaultDirectories();
 	


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.





More information about the Scummvm-git-logs mailing list