From 7c017f9015136e8641555576c1aecabaf66cb83e Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 16 Sep 2006 14:58:51 +0000 Subject: r18579: fixed boolean parameters on big endian hosts which have sizeof(BOOL) != sizeof(int) this broke with the conversion to a real BOOL type (This used to be commit 75dab73ac603968ce49c605e07d43051dbfa7398) --- source4/param/loadparm.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source4/param/loadparm.c b/source4/param/loadparm.c index 55d15653f6..2b2926d053 100644 --- a/source4/param/loadparm.c +++ b/source4/param/loadparm.c @@ -1861,11 +1861,14 @@ BOOL lp_do_parameter(int snum, const char *pszParmName, const char *pszParmValue /* now switch on the type of variable it is */ switch (parm_table[parmnum].type) { - case P_BOOL: - if (!set_boolean(pszParmValue, parm_ptr)) { + case P_BOOL: { + BOOL b; + if (!set_boolean(pszParmValue, &b)) { DEBUG(0,("lp_do_parameter(%s): value is not boolean!\n", pszParmValue)); return False; } + *(int *)parm_ptr = b; + } break; case P_INTEGER: -- cgit