diff options
author | unknown <bell@sanja.is.com.ua> | 2003-07-03 11:59:57 +0300 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2003-07-03 11:59:57 +0300 |
commit | 01eb6a4a223ece65c7ff1c9124f4d4b528d579b9 (patch) | |
tree | 649a5b402d0e779673e8295b10098046a53e6799 /sql/item_cmpfunc.cc | |
parent | 69be8b9d64e0a4e3f3374fd2cb3124b7deaa25a3 (diff) | |
parent | 9f6614292b8061063e709147b1282dda84c7f018 (diff) | |
download | mariadb-git-01eb6a4a223ece65c7ff1c9124f4d4b528d579b9.tar.gz |
merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Diffstat (limited to 'sql/item_cmpfunc.cc')
-rw-r--r-- | sql/item_cmpfunc.cc | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/sql/item_cmpfunc.cc b/sql/item_cmpfunc.cc index 8eb456c6227..22e03ec7d28 100644 --- a/sql/item_cmpfunc.cc +++ b/sql/item_cmpfunc.cc @@ -388,12 +388,7 @@ bool Item_in_optimizer::fix_fields(THD *thd, struct st_table_list *tables, return 1; if (args[0]->maybe_null) maybe_null=1; - /* - TODO: Check if following is right - (set_charset set type of result, not how compare should be used) - */ - if (args[0]->binary()) - set_charset(&my_charset_bin); + with_sum_func= args[0]->with_sum_func; used_tables_cache= args[0]->used_tables(); const_item_cache= args[0]->const_item(); @@ -938,7 +933,7 @@ Item *Item_func_case::find_item(String *str) if ((tmp=args[i]->val_str(str))) // If not null { /* QQ: COERCIBILITY */ - if (first_expr_is_binary || args[i]->binary()) + if (first_expr_is_binary || (args[i]->charset()->state & MY_CS_BINSORT)) { if (sortcmp(tmp,first_expr_str,&my_charset_bin)==0) return args[i+1]; @@ -1049,7 +1044,7 @@ Item_func_case::fix_fields(THD *thd, TABLE_LIST *tables, Item **ref) used_tables_cache|=(first_expr)->used_tables(); const_item_cache&= (first_expr)->const_item(); with_sum_func= with_sum_func || (first_expr)->with_sum_func; - first_expr_is_binary= first_expr->binary(); + first_expr_is_binary= first_expr->charset()->state & MY_CS_BINSORT; } if (else_expr) { |