summaryrefslogtreecommitdiffstats
path: root/lib/param/loadparm.c
diff options
context:
space:
mode:
authorGarming Sam <garming@catalyst.net.nz>2014-02-26 12:06:03 +1300
committerJeremy Allison <jra@samba.org>2014-05-07 19:49:17 +0200
commitb2ce4e75496dca9cc51dd858b569ee2b7e80eed2 (patch)
tree5179ba62702477e17dc56ff54d9bd69060b4b49e /lib/param/loadparm.c
parentf4d090f1458778708a061e6bf5d8bf6362639e90 (diff)
downloadsamba-b2ce4e75496dca9cc51dd858b569ee2b7e80eed2.tar.gz
samba-b2ce4e75496dca9cc51dd858b569ee2b7e80eed2.tar.xz
samba-b2ce4e75496dca9cc51dd858b569ee2b7e80eed2.zip
lib/param: change set_variable to be more consistent with s3 loadparm
Correctly frees CMDLIST memory and uses lp_int instead of atoi. Signed-off-by: Garming Sam <garming@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'lib/param/loadparm.c')
-rw-r--r--lib/param/loadparm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/param/loadparm.c b/lib/param/loadparm.c
index e2da7c92d2f..33960da2a7b 100644
--- a/lib/param/loadparm.c
+++ b/lib/param/loadparm.c
@@ -1441,7 +1441,7 @@ static bool set_variable(TALLOC_CTX *mem_ctx, int parmnum, void *parm_ptr,
break;
case P_INTEGER:
- *(int *)parm_ptr = atoi(pszParmValue);
+ *(int *)parm_ptr = lp_int(pszParmValue);
break;
case P_CHAR:
@@ -1468,6 +1468,7 @@ static bool set_variable(TALLOC_CTX *mem_ctx, int parmnum, void *parm_ptr,
}
case P_CMDLIST:
+ TALLOC_FREE(*(char ***)parm_ptr);
*(const char * const **)parm_ptr
= (const char * const *)str_list_make(mem_ctx,
pszParmValue, NULL);