diff options
author | awalker <awalker@ixsystems.com> | 2020-04-06 15:50:41 -0400 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2020-05-13 17:34:43 +0000 |
commit | 84c7eb4787d4bd9b4326570030ac088609c1389f (patch) | |
tree | a976768d49e51b5ff6fe921398e7573f6bc59ba1 /lib | |
parent | 6e419dda718cdb931f1d7d30926ed418a169415f (diff) | |
download | samba-84c7eb4787d4bd9b4326570030ac088609c1389f.tar.gz |
lib:param: Fix memory leak in lpcfg_load_internal()
Signed-off-by: awalker <awalker@ixsystems.com>
Reviewed-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed May 13 17:34:43 UTC 2020 on sn-devel-184
Diffstat (limited to 'lib')
-rw-r--r-- | lib/param/loadparm.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/param/loadparm.c b/lib/param/loadparm.c index 777999a3a76..d00ed9dca43 100644 --- a/lib/param/loadparm.c +++ b/lib/param/loadparm.c @@ -3229,9 +3229,12 @@ static bool lpcfg_load_internal(struct loadparm_context *lp_ctx, char *n2; bool bRetval; - filename = talloc_strdup(lp_ctx, filename); + if (lp_ctx->szConfigFile != NULL) { + talloc_free(discard_const_p(char, lp_ctx->szConfigFile)); + lp_ctx->szConfigFile = NULL; + } - lp_ctx->szConfigFile = filename; + lp_ctx->szConfigFile = talloc_strdup(lp_ctx, filename); if (lp_ctx->s3_fns) { return lp_ctx->s3_fns->load(filename); |