mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 18:20:07 +01:00
Bug#46043 mysqld --skip-innodb does not skip InnoDB
The prefix --skip- didn't work on 64 bit big endian machines because of how the value pointer was casted. mysys/my_getopt.c: * Use the interface! The value pointer must correspond to the type mask or it will break on big endian platforms.
This commit is contained in:
parent
cafe3c7fca
commit
ac3a08c3d2
1 changed files with 11 additions and 11 deletions
|
@ -413,17 +413,17 @@ invalid value '%s'",
|
|||
else if (optp->arg_type == OPT_ARG &&
|
||||
(((optp->var_type & GET_TYPE_MASK) == GET_BOOL) ||
|
||||
(optp->var_type & GET_TYPE_MASK) == GET_ENUM))
|
||||
{
|
||||
if (optend == disabled_my_option)
|
||||
*((my_bool*) value)= (my_bool) 0;
|
||||
else
|
||||
{
|
||||
if (!optend) /* No argument -> enable option */
|
||||
*((my_bool*) value)= (my_bool) 1;
|
||||
else
|
||||
argument= optend;
|
||||
}
|
||||
}
|
||||
{
|
||||
if (optend == disabled_my_option)
|
||||
init_one_value(optp, value, 0);
|
||||
else
|
||||
{
|
||||
if (!optend) /* No argument -> enable option */
|
||||
init_one_value(optp, value, 1);
|
||||
else
|
||||
argument= optend;
|
||||
}
|
||||
}
|
||||
else if (optp->arg_type == REQUIRED_ARG && !optend)
|
||||
{
|
||||
/* Check if there are more arguments after this one */
|
||||
|
|
Loading…
Add table
Reference in a new issue