Commit 56861c2d authored by Gleb Shchepa's avatar Gleb Shchepa

after-push patch: partial rollback of bug #37761 fix.

Note: item->null_value is not updated before a call to
item->store(), item->is_null() is not too (in common case).
parent e000e4a2
...@@ -3758,8 +3758,6 @@ longlong Item_func_in::val_int() ...@@ -3758,8 +3758,6 @@ longlong Item_func_in::val_int()
return (longlong) (!null_value && tmp != negated); return (longlong) (!null_value && tmp != negated);
} }
if ((null_value= args[0]->null_value))
return 0;
have_null= 0; have_null= 0;
for (uint i= 1 ; i < arg_count ; i++) for (uint i= 1 ; i < arg_count ; i++)
{ {
...@@ -3769,6 +3767,8 @@ longlong Item_func_in::val_int() ...@@ -3769,6 +3767,8 @@ longlong Item_func_in::val_int()
if (!(value_added_map & (1 << (uint)cmp_type))) if (!(value_added_map & (1 << (uint)cmp_type)))
{ {
in_item->store_value(args[0]); in_item->store_value(args[0]);
if ((null_value= args[0]->null_value))
return 0;
value_added_map|= 1 << (uint)cmp_type; value_added_map|= 1 << (uint)cmp_type;
} }
if (!in_item->cmp(args[i]) && !args[i]->null_value) if (!in_item->cmp(args[i]) && !args[i]->null_value)
......
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