]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - super-ddf.c
ddf: free_super should be add_list as well.
[thirdparty/mdadm.git] / super-ddf.c
index d20721586c586f890196ab8dad3f1e816fd840b3..92741dd8f8ddd9569b2059c7fd6069bb129aecd5 100644 (file)
@@ -900,6 +900,15 @@ static void free_super_ddf(struct supertype *st)
                        free(d->spare);
                free(d);
        }
+       while (ddf->add_list) {
+               struct dl *d = ddf->add_list;
+               ddf->add_list = d->next;
+               if (d->fd >= 0)
+                       close(d->fd);
+               if (d->spare)
+                       free(d->spare);
+               free(d);
+       }
        free(ddf);
        st->sb = NULL;
 }