fs_mgr: fix memory leak

The fstab struct wasn't properly being freed.

Test: Ensure a user of fs_mgr (vold) runs without errors.
Change-Id: I4dcb8ae2ab3e831fbdb13372eb31a67a5d9fb735
This commit is contained in:
Chris Morin 2018-01-04 14:46:01 -08:00
parent db976aa526
commit 517ed633c2

View file

@ -654,12 +654,13 @@ static struct fstab *in_place_merge(struct fstab *a, struct fstab *b)
}
for (int i = a->num_entries, j = 0; i < total_entries; i++, j++) {
// copy the pointer directly *without* malloc and memcpy
// Copy the structs by assignment.
a->recs[i] = b->recs[j];
}
// Frees up b, but don't free b->recs[X] to make sure they are
// accessible through a->recs[X].
// We can't call fs_mgr_free_fstab because a->recs still references the
// memory allocated by strdup.
free(b->recs);
free(b->fstab_filename);
free(b);