Commit ec1aca5c authored by serg@serg.mylan's avatar serg@serg.mylan

correct (finally) condition for MATCH >0, >=0 etc in add_ft_keys (SW#1647)

still no rec. descent
parent 38a2ed6f
......@@ -1655,17 +1655,17 @@ add_ft_keys(DYNAMIC_ARRAY *keyuse_array,
{
Item_func *arg0=(Item_func *)(func->arguments()[0]),
*arg1=(Item_func *)(func->arguments()[1]);
if ((functype == Item_func::GE_FUNC ||
functype == Item_func::GT_FUNC) &&
if (arg1->const_item() &&
((functype == Item_func::GE_FUNC && arg1->val()> 0) ||
(functype == Item_func::GT_FUNC && arg1->val()>=0)) &&
arg0->type() == Item::FUNC_ITEM &&
arg0->functype() == Item_func::FT_FUNC &&
arg1->const_item() && arg1->val()>0)
arg0->functype() == Item_func::FT_FUNC)
cond_func=(Item_func_match *) arg0;
else if ((functype == Item_func::LE_FUNC ||
functype == Item_func::LT_FUNC) &&
else if (arg0->const_item() &&
((functype == Item_func::LE_FUNC && arg0->val()> 0) ||
(functype == Item_func::LT_FUNC && arg0->val()>=0)) &&
arg1->type() == Item::FUNC_ITEM &&
arg1->functype() == Item_func::FT_FUNC &&
arg0->const_item() && arg0->val()>0)
arg1->functype() == Item_func::FT_FUNC)
cond_func=(Item_func_match *) arg1;
}
}
......
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