| 968 | } |
| 969 | |
| 970 | int cmp_item_row::cmp(Item *arg) |
| 971 | { |
| 972 | arg->null_value= 0; |
| 973 | if (arg->cols() != n) |
| 974 | { |
| 975 | my_error(ER_OPERAND_COLUMNS, MYF(0), n); |
| 976 | return 1; |
| 977 | } |
| 978 | bool was_null= 0; |
| 979 | arg->bring_value(); |
| 980 | for (uint i=0; i < n; i++) |
| 981 | { |
| 982 | if (comparators[i]->cmp(arg->element_index(i))) |
| 983 | { |
| 984 | if (!arg->element_index(i)->null_value) |
| 985 | return 1; |
| 986 | was_null= 1; |
| 987 | } |
| 988 | } |
| 989 | return (arg->null_value= was_null); |
| 990 | } |
| 991 | |
| 992 | |
| 993 | int cmp_item_row::compare(cmp_item *c) |
nothing calls this directly
no test coverage detected