hrev44203 adds 1 changeset to branch 'master' old head: b7aa0a94ff7d495bdb300508bf0a34b8072827fb new head: 936b7fe4331f2dbfe63697bd90e29ce23fb828c7 ---------------------------------------------------------------------------- 936b7fe: Fixed a possible FD leak, CID 702009. [ Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> ] ---------------------------------------------------------------------------- Revision: hrev44203 Commit: 936b7fe4331f2dbfe63697bd90e29ce23fb828c7 URL: http://cgit.haiku-os.org/haiku/commit/?id=936b7fe Author: Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> Date: Thu May 24 23:40:31 2012 UTC ---------------------------------------------------------------------------- 1 file changed, 3 insertions(+), 5 deletions(-) src/add-ons/disk_systems/bfs/BFSAddOn.cpp | 8 +++----- ---------------------------------------------------------------------------- diff --git a/src/add-ons/disk_systems/bfs/BFSAddOn.cpp b/src/add-ons/disk_systems/bfs/BFSAddOn.cpp index e0ca448..b33c828 100644 --- a/src/add-ons/disk_systems/bfs/BFSAddOn.cpp +++ b/src/add-ons/disk_systems/bfs/BFSAddOn.cpp @@ -230,6 +230,8 @@ BFSPartitionHandle::Repair(bool checkOnly) if (fd < 0) return errno; + FileDescriptorCloser closer(fd); + struct check_control result; memset(&result, 0, sizeof(result)); result.magic = BFS_IOCTL_CHECK_MAGIC; @@ -295,12 +297,8 @@ BFSPartitionHandle::Repair(bool checkOnly) } // stop checking - if (ioctl(fd, BFS_IOCTL_STOP_CHECKING, &result, sizeof(result)) != 0) { - close(fd); + if (ioctl(fd, BFS_IOCTL_STOP_CHECKING, &result, sizeof(result)) != 0) return errno; - } - - close(fd); printf(" %" B_PRIu64 " nodes checked,\n\t%" B_PRIu64 " blocks not " "allocated,\n\t%" B_PRIu64 " blocks already set,\n\t%" B_PRIu64