logging_ok:

  Logging to logging@openlogging.org accepted
item_cmpfunc.cc, ctype_recoding.test, ctype_recoding.result:
  Call Item_func_conv_charset::fix_fields() in Item_bool_func2::fix_length_and_dec() (but #3704)
parent 6fffe590
......@@ -163,6 +163,7 @@ tonu@hundin.mysql.fi
tonu@volk.internalnet
tonu@x153.internalnet
tonu@x3.internalnet
tsmith@build.mysql.com
ulli@morbus.(none)
venu@hundin.mysql.fi
venu@myvenu.com
......
......@@ -82,6 +82,13 @@ Field Type Null Key Default Extra
SET CHARACTER SET koi8r;
DROP TABLE ;
SET CHARACTER SET default;
SET NAMES UTF8;
CREATE TABLE t1 (t text) DEFAULT CHARSET UTF8;
INSERT INTO t1 (t) VALUES ('x');
SELECT 1 FROM t1 WHERE CONCAT(_latin1'x') = t;
1
1
DROP TABLE t1;
SET CHARACTER SET koi8r;
CREATE DATABASE ;
USE ;
......
......@@ -56,6 +56,13 @@ SET CHARACTER SET koi8r;
DROP TABLE ;
SET CHARACTER SET default;
# Test for Item_func_conv_charset::fix_fields (bug #3704)
SET NAMES UTF8;
CREATE TABLE t1 (t text) DEFAULT CHARSET UTF8;
INSERT INTO t1 (t) VALUES ('x');
SELECT 1 FROM t1 WHERE CONCAT(_latin1'x') = t;
DROP TABLE t1;
SET CHARACTER SET koi8r;
CREATE DATABASE ;
USE ;
......@@ -71,4 +78,3 @@ SET NAMES koi8r;
SELECT hex('');
SET character_set_connection=cp1251;
SELECT hex('');
......@@ -221,6 +221,7 @@ void Item_bool_func2::fix_length_and_dec()
{
conv= new Item_func_conv_charset(args[weak],args[strong]->collation.collation);
conv->collation.set(args[weak]->collation.derivation);
conv->fix_fields(current_thd, 0, &conv);
}
args[weak]= conv ? conv : args[weak];
}
......
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