From 885d9d903721ba9c11098ea4df4d6d4de6560ae5 Mon Sep 17 00:00:00 2001 From: "Sinisa@sinisa.nasamreza.org" <> Date: Tue, 31 Dec 2002 18:01:53 +0200 Subject: [PATCH] A fix for a charset bug in the select_export (select into outfile) class. --- mysql-test/t/outfile.test | 6 +++--- sql/field.cc | 1 - sql/item.cc | 1 + 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mysql-test/t/outfile.test b/mysql-test/t/outfile.test index 3d524cb35a2..a944df01051 100644 --- a/mysql-test/t/outfile.test +++ b/mysql-test/t/outfile.test @@ -22,7 +22,7 @@ #select load_file("/tmp/select-test.not-exist"); #drop table t1; #drop table if exists t; -#CREATE TABLE t ( t timestamp NOT NULL, c char(200) character set latin1 NOT NULL default '', KEY t (t)) TYPE=MyISAM; -#INSERT INTO t VALUES ('2002-12-20 12:01:20',''); -#select * from t into outfile "fdg"; +#CREATE TABLE t ( t timestamp NOT NULL, c char(200) character set latin1 NOT NULL default '', i int(11), v varchar(200), b blob, KEY t (t)) TYPE=MyISAM; +#INSERT INTO t VALUES ('2002-12-20 12:01:20','',1,"aaa","bbb"); +#select * from t into outfile "check"; #drop table if exists t; diff --git a/sql/field.cc b/sql/field.cc index be565e2e869..36d1bf49c7c 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -2844,7 +2844,6 @@ String *Field_timestamp::val_str(String *val_buffer, val_buffer->alloc(field_length+1); char *to=(char*) val_buffer->ptr(),*end=to+field_length; val_buffer->length(field_length); - val_buffer->set_charset(val_ptr->charset()); #ifdef WORDS_BIGENDIAN if (table->db_low_byte_first) diff --git a/sql/item.cc b/sql/item.cc index 95689e20faa..08ca2d66f02 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -220,6 +220,7 @@ String *Item_field::str_result(String *str) { if ((null_value=result_field->is_null())) return 0; + str->set_charset(str_value.charset()); return result_field->val_str(str,&str_value); }