summaryrefslogtreecommitdiff
path: root/sql/unireg.cc
diff options
context:
space:
mode:
authorunknown <bar@mysql.com>2004-12-21 17:12:27 +0400
committerunknown <bar@mysql.com>2004-12-21 17:12:27 +0400
commit2ba7c517a48a670cad22c1282f6a74903db80e99 (patch)
tree08f36b11c00064e38be98e5ac2f6e7587f8d8a13 /sql/unireg.cc
parentc6b6977b9ee65258eef6f55a17fea8c68dcf1a0d (diff)
downloadmariadb-git-2ba7c517a48a670cad22c1282f6a74903db80e99.tar.gz
Bug#7302: UCS2 data in ENUM field get truncated when new column is added
Diffstat (limited to 'sql/unireg.cc')
-rw-r--r--sql/unireg.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/sql/unireg.cc b/sql/unireg.cc
index 6d72c6af135..a550b06a466 100644
--- a/sql/unireg.cc
+++ b/sql/unireg.cc
@@ -174,6 +174,17 @@ bool mysql_create_frm(THD *thd, my_string file_name,
goto err2;
if (my_close(file,MYF(MY_WME)))
goto err3;
+
+ {
+ /* Unescape all UCS2 intervals: were escaped in pack_headers */
+ List_iterator<create_field> it(create_fields);
+ create_field *field;
+ while ((field=it++))
+ {
+ if (field->interval && field->charset->mbminlen > 1)
+ unhex_type2(field->interval);
+ }
+ }
DBUG_RETURN(0);
err: