diff options
author | unknown <bar@gw.udmsearch.izhnet.ru> | 2002-06-26 16:00:43 +0500 |
---|---|---|
committer | unknown <bar@gw.udmsearch.izhnet.ru> | 2002-06-26 16:00:43 +0500 |
commit | 1ff701ee0ccc7410a9dc42ce5ee11e4004002d3a (patch) | |
tree | 351864c2a320096c0191ddb08289cc5a4dd7ee4b /sql/field_conv.cc | |
parent | 969919146e96f7709f32ac882359372a45da7944 (diff) | |
download | mariadb-git-1ff701ee0ccc7410a9dc42ce5ee11e4004002d3a.tar.gz |
Several problems were fixed (mostly BLOB+charset related)
Fixed that MyISAM were not working properly with non-8bit charsets in some cases
CONVERT() function now works properly
myisam/mi_unique.c:
Fix for non-8bit charsets
sql/field.cc:
Initialize blobs with charset
sql/field.h:
Initialize blobs with charset
sql/field_conv.cc:
Initialize blobs with charset
sql/item_strfunc.cc:
CONVERT() function now has working fix_lenght_and_dec(), and it's own
fix_fields()
sql/item_strfunc.h:
CONVERT() function now has working fix_lenght_and_dec(), and it's own
fix_fields()
sql/sql_select.cc:
Fixes for BLOBs
Fixed that wrong charset was used in some cases
Diffstat (limited to 'sql/field_conv.cc')
-rw-r--r-- | sql/field_conv.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/field_conv.cc b/sql/field_conv.cc index 3b8a2ee791c..da7a1187a47 100644 --- a/sql/field_conv.cc +++ b/sql/field_conv.cc @@ -508,7 +508,8 @@ void field_conv(Field *to,Field *from) if (!blob->value.is_alloced() && from->real_type() != FIELD_TYPE_STRING) blob->value.copy(); - blob->store(blob->value.ptr(),blob->value.length(),default_charset_info); + blob->store(blob->value.ptr(),blob->value.length(), + to->binary()?default_charset_info:((Field_str*)to)->charset()); return; } if ((from->result_type() == STRING_RESULT && |