summaryrefslogtreecommitdiff
path: root/convert.c
diff options
context:
space:
mode:
authorEric Sandeen <sandeen@redhat.com>2013-03-04 16:39:52 -0600
committerDavid Sterba <dsterba@suse.cz>2013-03-10 15:48:47 +0100
commit9e769c4864234a22d2e01a0a1cf7d3bac2db8b5c (patch)
tree8f6ec915f21072b93d1a109acf8ec99489d7859e /convert.c
parent0b9e200099c83e92e49557aef8348301f225052f (diff)
btrfs-progs: close fd on do_convert error returns
stops an fd leak that Coverity found. Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Diffstat (limited to 'convert.c')
-rw-r--r--convert.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/convert.c b/convert.c
index 2b3f42f2..4a758958 100644
--- a/convert.c
+++ b/convert.c
@@ -2277,7 +2277,8 @@ err:
int do_convert(const char *devname, int datacsum, int packing, int noxattr)
{
- int i, fd, ret;
+ int i, ret;
+ int fd = -1;
u32 blocksize;
u64 blocks[7];
u64 total_bytes;
@@ -2407,6 +2408,8 @@ int do_convert(const char *devname, int datacsum, int packing, int noxattr)
printf("conversion complete.\n");
return 0;
fail:
+ if (fd != -1)
+ close(fd);
fprintf(stderr, "conversion aborted.\n");
return -1;
}