[haiku-commits] haiku: hrev44203 - src/add-ons/disk_systems/bfs

  • From: axeld@xxxxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 25 May 2012 02:21:28 +0200 (CEST)

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


Other related posts:

  • » [haiku-commits] haiku: hrev44203 - src/add-ons/disk_systems/bfs - axeld