changeset 75:c10465be6160

Fixed language, makeFile no longer eats all errors from lookupFile
author Jonathan Pevarnek <pevarnj@gmail.com>
date Tue, 26 Apr 2011 23:17:35 -0400
parents 36e6fc4a0487
children 6538d7c45ad8
files src/fs.c
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/fs.c	Tue Apr 26 22:38:45 2011 -0400
+++ b/src/fs.c	Tue Apr 26 23:17:35 2011 -0400
@@ -66,7 +66,7 @@
 		Direntry de;
 		ErrCode err = getFInfo(i, &de);
 		if(err == mkError(MODFS, OUTOFRANGE, WARN)) break; //have iterated through all files
-		else if(isError(err)) return err; //forward error
+		else if(isError(err)) return err; //propogate error
 		if(!fnameCmp(fname, de.fname)) {
 			*fid = de.inode;
 			return 0;
@@ -81,8 +81,9 @@
 ErrCode makeFile(char *fname, u32 *fid)
 {
 	ErrCode err;
-	if(lookupFile(fname, fid) != mkError(MODFS, NOTFILE, ERROR))
+	if(!isError(err = lookupFile(fname, fid)))
 		return mkError(MODFS, EXISTS, ERROR); //the file should not exist
+	if(err != mkError(MODFS, NOTFILE, ERROR)) return err;
 	if(isError(err = nextFreeBlock(0, fid))) return err;
 
 	Inode nin;