- remove bugfix in findnode_fs

- change bugfix in open_fs
This commit is contained in:
Marian Ohligs 2011-09-25 12:57:39 +02:00
parent b8552f1f03
commit 1e03b40869

View file

@ -72,8 +72,6 @@ int open_fs(fildes_t* file, const char* name)
if (name[0] == '/')
file_node = fs_root;
else
return -ENOENT;
while((name[j] != '\0') && (file_node != NULL)) {
i = 0;
@ -96,13 +94,15 @@ int open_fs(fildes_t* file, const char* name)
if (file_node->open != 0)
ret = file->node->open(file, NULL);
spinlock_unlock(&file_node->lock);
} else { /* file doesn't exist */
} else if (dir_node) { /* file doesn't exist */
spinlock_lock(&dir_node->lock);
file->node = dir_node;
// Has the dir_node got an open callback?
if (dir_node->open != 0)
ret = dir_node->open(file, fname);
spinlock_unlock(&dir_node->lock);
} else {
ret = -ENOENT;
}
return ret;
@ -182,9 +182,6 @@ vfs_node_t* findnode_fs(const char* name)
if (name[0] == '/')
ret = fs_root;
else
return -ENOENT;
while((name[j] != '\0') && ret) {
i = 0;