restore_backup() throws core dump during releasing fdlist.
Loop for closing handlers checks next_spare variable,
but iterates disk_count.
Reported-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
backup_file, verbose > 0);
while (next_spare > 0) {
- disk_count--;
- if (fdlist[disk_count] >= 0)
- close(fdlist[disk_count]);
+ next_spare--;
+ if (fdlist[next_spare] >= 0)
+ close(fdlist[next_spare]);
}
free(fdlist);
if (err) {