From 0c48c43777589ae350081733ce20eb3d8cc4beea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Tue, 1 Jul 2008 11:42:51 +0000 Subject: [PATCH] * Fixed the bfs_write() error code for directories as suggested by Jerome. * Removed a few superfluous checks. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26191 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../file_systems/bfs/kernel_interface.cpp | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp index 741869061a..daaa1b6ecd 100644 --- a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp +++ b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp @@ -1179,9 +1179,7 @@ bfs_read(fs_volume *_volume, fs_vnode *_node, void *_cookie, off_t pos, if (!inode->HasUserAccessableStream()) { *_length = 0; - if (inode->IsDirectory()) - RETURN_ERROR(B_IS_A_DIRECTORY); - RETURN_ERROR(B_BAD_VALUE); + return inode->IsDirectory() ? B_IS_A_DIRECTORY : B_BAD_VALUE; } return inode->ReadAt(pos, (uint8 *)buffer, _length); @@ -1201,7 +1199,7 @@ bfs_write(fs_volume *_volume, fs_vnode *_node, void *_cookie, off_t pos, if (!inode->HasUserAccessableStream()) { *_length = 0; - RETURN_ERROR(B_BAD_VALUE); + return inode->IsDirectory() ? B_IS_A_DIRECTORY : B_BAD_VALUE; } file_cookie *cookie = (file_cookie *)_cookie; @@ -1475,8 +1473,6 @@ bfs_read_dir(fs_volume *_volume, fs_vnode *_node, void *_cookie, FUNCTION(); TreeIterator *iterator = (TreeIterator *)_cookie; - if (iterator == NULL) - RETURN_ERROR(B_BAD_VALUE); uint16 length; ino_t id; @@ -1507,9 +1503,6 @@ bfs_rewind_dir(fs_volume * /*_volume*/, fs_vnode * /*node*/, void *_cookie) FUNCTION(); TreeIterator *iterator = (TreeIterator *)_cookie; - if (iterator == NULL) - RETURN_ERROR(B_BAD_VALUE); - return iterator->Rewind(); } @@ -1525,12 +1518,7 @@ bfs_close_dir(fs_volume * /*_volume*/, fs_vnode * /*node*/, void * /*_cookie*/) static status_t bfs_free_dir_cookie(fs_volume *_volume, fs_vnode *node, void *_cookie) { - TreeIterator *iterator = (TreeIterator *)_cookie; - - if (iterator == NULL) - RETURN_ERROR(B_BAD_VALUE); - - delete iterator; + delete (TreeIterator *)_cookie; return B_OK; }