diff options
Diffstat (limited to 'source3/param/loadparm.c')
-rw-r--r-- | source3/param/loadparm.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c index c449073986..c6ff350d6c 100644 --- a/source3/param/loadparm.c +++ b/source3/param/loadparm.c @@ -3177,8 +3177,14 @@ bool lp_do_parameter(int snum, const char *pszParmName, const char *pszParmValue /* if it is a special case then go ahead */ if (parm_table[parmnum].special) { - return parm_table[parmnum].special(NULL, snum, pszParmValue, - (char **)parm_ptr); + bool ok; + struct loadparm_context *lp_ctx = loadparm_init_s3(talloc_tos(), + loadparm_s3_helpers()); + ok = parm_table[parmnum].special(lp_ctx, snum, pszParmValue, + (char **)parm_ptr); + TALLOC_FREE(lp_ctx); + + return ok; } /* now switch on the type of variable it is */ |