From: Jes Sorensen Date: Tue, 1 Nov 2011 15:09:27 +0000 (+0100) Subject: enough_fd(): remember to free buffer for avail array X-Git-Tag: mdadm-3.2.3~85 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aabe020dd2465c9a4df6e72f35f7a986bd7c5327;p=thirdparty%2Fmdadm.git enough_fd(): remember to free buffer for avail array Signed-off-by: Jes Sorensen Signed-off-by: NeilBrown --- diff --git a/util.c b/util.c index 38af6d57..6985a707 100644 --- a/util.c +++ b/util.c @@ -363,7 +363,7 @@ int enough_fd(int fd) struct mdu_array_info_s array; struct mdu_disk_info_s disk; int avail_disks = 0; - int i; + int i, rv; char *avail; if (ioctl(fd, GET_ARRAY_INFO, &array) != 0 || @@ -386,9 +386,10 @@ int enough_fd(int fd) avail[disk.raid_disk] = 1; } /* This is used on an active array, so assume it is clean */ - return enough(array.level, array.raid_disks, array.layout, - 1, - avail, avail_disks); + rv = enough(array.level, array.raid_disks, array.layout, + 1, avail, avail_disks); + free(avail); + return rv; }