Merge "Fix fstab memory leak"
This commit is contained in:
commit
a208ea6301
1 changed files with 4 additions and 2 deletions
|
|
@ -222,7 +222,7 @@ struct fstab *fs_mgr_read_fstab(const char *fstab_path)
|
||||||
char *line = NULL;
|
char *line = NULL;
|
||||||
const char *delim = " \t";
|
const char *delim = " \t";
|
||||||
char *save_ptr, *p;
|
char *save_ptr, *p;
|
||||||
struct fstab *fstab;
|
struct fstab *fstab = NULL;
|
||||||
struct fstab_rec *recs;
|
struct fstab_rec *recs;
|
||||||
char *key_loc;
|
char *key_loc;
|
||||||
long long part_length;
|
long long part_length;
|
||||||
|
|
@ -345,7 +345,10 @@ struct fstab *fs_mgr_read_fstab(const char *fstab_path)
|
||||||
return fstab;
|
return fstab;
|
||||||
|
|
||||||
err:
|
err:
|
||||||
|
fclose(fstab_file);
|
||||||
free(line);
|
free(line);
|
||||||
|
if (fstab)
|
||||||
|
fs_mgr_free_fstab(fstab);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -361,7 +364,6 @@ void fs_mgr_free_fstab(struct fstab *fstab)
|
||||||
free(fstab->recs[i].fs_options);
|
free(fstab->recs[i].fs_options);
|
||||||
free(fstab->recs[i].key_loc);
|
free(fstab->recs[i].key_loc);
|
||||||
free(fstab->recs[i].label);
|
free(fstab->recs[i].label);
|
||||||
i++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Free the fstab_recs array created by calloc(3) */
|
/* Free the fstab_recs array created by calloc(3) */
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue