From aae3cdc35afd38b8e67fa4a8b4384c9c9d345c60 Mon Sep 17 00:00:00 2001 From: Przemyslaw Czarnowski Date: Tue, 6 Jul 2010 16:47:02 +1000 Subject: fix: IncrementalRemove leaves open handle Signed-off-by: Przemyslaw Czarnowski > --- Incremental.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Incremental.c b/Incremental.c index 96bfcec..eb27784 100644 --- a/Incremental.c +++ b/Incremental.c @@ -883,6 +883,7 @@ int Incremental_container(struct supertype *st, char *devname, int verbose, int IncrementalRemove(char *devname, int verbose) { int mdfd; + int rv; struct mdstat_ent *ent; struct mddev_dev_s devlist; @@ -907,5 +908,7 @@ int IncrementalRemove(char *devname, int verbose) devlist.disposition = 'f'; Manage_subdevs(ent->dev, mdfd, &devlist, verbose, 0); devlist.disposition = 'r'; - return Manage_subdevs(ent->dev, mdfd, &devlist, verbose, 0); + rv = Manage_subdevs(ent->dev, mdfd, &devlist, verbose, 0); + close(mdfd); + return rv; } -- cgit