summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/param/loadparm.c7
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);