[Scummvm-cvs-logs] CVS: scummvm/common file.cpp,1.66,1.67

Max Horn fingolfin at users.sourceforge.net
Sat Jul 31 02:35:10 CEST 2004


Update of /cvsroot/scummvm/scummvm/common
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24853

Modified Files:
	file.cpp 
Log Message:
Fixed bug #1001069; clarified/simplified some error messages

Index: file.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/common/file.cpp,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -d -r1.66 -r1.67
--- file.cpp	26 Jul 2004 22:53:29 -0000	1.66
+++ file.cpp	31 Jul 2004 09:34:10 -0000	1.67
@@ -125,18 +125,14 @@
 
 
 bool File::open(const char *filename, AccessMode mode, const char *directory) {
+	assert(mode == kFileReadMode || mode == kFileWriteMode);
+
 	if (_handle) {
-		error("File %s already opened", filename);
-		return false;
+		error("File::open: This file object already is opened (%s), won't open '%s'", _name, filename);
 	}
 
 	if (filename == NULL || *filename == 0) {
-		return false;
-	}
-
-	if (mode != kFileReadMode && mode != kFileWriteMode) {
-		error("Only read/write mode supported!");
-		return false;
+		error("File::open: No filename was specified!");
 	}
 
 	clearIOFailed();
@@ -146,6 +142,9 @@
 		_handle = fopenNoCase(filename, directory, modeStr);
 	} else {
 		Common::StringList::const_iterator x;
+		// First try the current directory
+		_handle = fopenNoCase(filename, "", modeStr);
+		// Next try all default directories
 		for (x = _defaultDirectories.begin(); _handle == NULL && x != _defaultDirectories.end(); ++x) {
 			_handle = fopenNoCase(filename, x->c_str(), modeStr);
 		}





More information about the Scummvm-git-logs mailing list