Commit 004fa3f9 authored by unknown's avatar unknown

Added possibility to use string values 'true' and 'false' case

insensitively with boolean options. Added a warning if given
value is invalid and skips the option handling in that case.
parent c0b9fa32
......@@ -342,11 +342,23 @@ int handle_options(int *argc, char ***argv,
--enable-'option-name'.
*optend was set to '0' if one used --disable-option
*/
my_bool tmp= (my_bool) (!optend || *optend == '1');
*((my_bool*) value)= tmp;
(*argc)--;
if (!optend || *optend == '1' ||
!my_strcasecmp(&my_charset_latin1, optend, "true"))
*((my_bool*) value)= (my_bool) 1;
else if (*optend == '0' ||
!my_strcasecmp(&my_charset_latin1, optend, "false"))
*((my_bool*) value)= (my_bool) 0;
else
{
my_getopt_error_reporter(WARNING_LEVEL,
"%s: ignoring option '--%s' due to \
invalid value '%s'\n",
my_progname, optp->name, optend);
continue;
}
get_one_option(optp->id, optp,
tmp ? (char*) "1" : disabled_my_option);
value ? (char*) "1" : disabled_my_option);
continue;
}
argument= optend;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment