Another suspicious "memcmp()" is in the "get_constant_key_infix()" function
*****************************************************************
if (cur_range->maybe_null && cur_range->min_value[0] && cur_range->max_value[0])
{
/*
cur_range specifies 'IS NULL'. In this case the argument points
to a "null value" (a copy of is_null_string) that we do not
memcmp(), or memcpy to a field.
*/
DBUG_ASSERT (field_length > 0);
*key_ptr= 1;
key_ptr+= field_length;
*key_infix_len+= field_length;
}
else if (memcmp(cur_range->min_value, cur_range->max_value, field_length) == 0)
{ /* cur_range specifies an equality condition. */
memcpy(key_ptr, cur_range->min_value, field_length);
key_ptr+= field_length;
*key_infix_len+= field_length;
}
else
return false;
*****************************************************************
Another suspicious "memcmp()" is in the "get_constant_ key_infix( )" function ******* ******* ******* ******* ******* ******* ******* ******* ** >maybe_ null &&
cur_range- >min_value[ 0] && cur_range- >max_value[ 0]) key_infix_ len+= field_length; cur_range- >min_value, cur_range- >max_value, field_length) == 0) key_ptr, cur_range- >min_value, field_length); key_infix_ len+= field_length; ******* ******* ******* ******* ******* ******* ******* ******* **
*******
if (cur_range-
{
/*
cur_range specifies 'IS NULL'. In this case the argument points
to a "null value" (a copy of is_null_string) that we do not
memcmp(), or memcpy to a field.
*/
DBUG_ASSERT (field_length > 0);
*key_ptr= 1;
key_ptr+= field_length;
*
}
else if (memcmp(
{ /* cur_range specifies an equality condition. */
memcpy(
key_ptr+= field_length;
*
}
else
return false;
*******