Commit 62ad8922 authored by bar@mysql.com's avatar bar@mysql.com
Browse files

ctype_utf8.result, ctype_utf8.test:

  Adding test case.
item_func.cc:
  Bug#13751 find_in_set: Illegal mix of collations.
  Character set conversion was forgotten in find_in_set.
parent 3f73d25f
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1056,3 +1056,8 @@ hex(a)
5B
E880BD
drop table t1;
set names 'latin1';
create table t1 (a varchar(255)) default charset=utf8;
select * from t1 where find_in_set('-1', a);
a
drop table t1;
+8 −0
Original line number Diff line number Diff line
@@ -865,4 +865,12 @@ insert into t1 values (_utf8 0x5b);
select hex(a) from t1;
drop table t1;

#
# Bug#13751 find_in_set: Illegal mix of collations
#
set names 'latin1';
create table t1 (a varchar(255)) default charset=utf8;
select * from t1 where find_in_set('-1', a);
drop table t1;

# End of 4.1 tests
+1 −1
Original line number Diff line number Diff line
@@ -1454,7 +1454,7 @@ void Item_func_find_in_set::fix_length_and_dec()
      }
    }
  }
  agg_arg_collations_for_comparison(cmp_collation, args, 2);
  agg_arg_charsets(cmp_collation, args, 2, MY_COLL_CMP_CONV);
}

static const char separator=',';