Re: [PATCH 6/8] bitmap: Fix resource leak in bitmap_file_open()

From
Jes Sorensen <hidden>
Date
2016-03-09 16:28:46
NeilBrown [off-list ref] writes:
On Wed, Mar 09 2016, Jes.Sorensen@redhat.com wrote:
quoted
From: Jes Sorensen <redacted>

The code would leak 'fd' if locate_bitmap() failed.

Signed-off-by: Jes Sorensen <redacted>
---
 bitmap.c | 1 +
 1 file changed, 1 insertion(+)
diff --git a/bitmap.c b/bitmap.c
index 5ad7401..0367d13 100644
--- a/bitmap.c
+++ b/bitmap.c
@@ -224,6 +224,7 @@ int bitmap_file_open(char *filename, struct supertype **stp, int node_num)
 		} else {
 			if (st->ss->locate_bitmap(st, fd, node_num)) {
 				pr_err("%s doesn't have bitmap\n", filename);
+				close(fd);
 				fd = -1;
 			}
 		}
Don't you also need a 'close' in

		} else if (!st->ss->locate_bitmap) {
			pr_err("No bitmap possible with %s metadata\n",
				st->ss->name);
			return -1;
??
I probably need new glasses too :)

Thanks for catching that!

Cheers,
Jes
Thread (1 message) 1 message, 1 author, last reply 2016-03-09
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help