diff options
author | Chengguang Xu <cgxu519@gmx.com> | 2018-05-22 12:24:25 +0800 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2018-05-28 12:36:41 +0200 |
commit | 84ae6f829fc2b23dd4985ab059cddfd4a1ccc14f (patch) | |
tree | 24b09f9e02ad881459cd15cc891a2ad6c2c4043c /fs/affs | |
parent | b50694381cfc22dce3a60a291cdae294a5e5777c (diff) | |
download | linux-84ae6f829fc2b23dd4985ab059cddfd4a1ccc14f.tar.gz linux-84ae6f829fc2b23dd4985ab059cddfd4a1ccc14f.tar.bz2 linux-84ae6f829fc2b23dd4985ab059cddfd4a1ccc14f.zip |
affs: fix potential memory leak when parsing option 'prefix'
When specifying option 'prefix' multiple times, current option parsing
will cause memory leak. Hence, call kfree for previous one in this
case.
Signed-off-by: Chengguang Xu <cgxu519@gmx.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/affs')
-rw-r--r-- | fs/affs/super.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/affs/super.c b/fs/affs/super.c index e602619aed9d..d1ad11a8a4a5 100644 --- a/fs/affs/super.c +++ b/fs/affs/super.c @@ -241,6 +241,7 @@ parse_options(char *options, kuid_t *uid, kgid_t *gid, int *mode, int *reserved, affs_set_opt(*mount_opts, SF_NO_TRUNCATE); break; case Opt_prefix: + kfree(*prefix); *prefix = match_strdup(&args[0]); if (!*prefix) return 0; |