summaryrefslogtreecommitdiff
path: root/sql/item_timefunc.cc
diff options
context:
space:
mode:
authorunknown <knielsen@knielsen-hq.org>2010-03-10 10:12:23 +0100
committerunknown <knielsen@knielsen-hq.org>2010-03-10 10:12:23 +0100
commit4d7b6a6ea157bfa193376fb6367b64dd23e0d058 (patch)
treed0413974498733fac08c2e0dee7719eda7a4a48a /sql/item_timefunc.cc
parentb1a6297986d59c7d4a13ee7df89b4b7c384aa22b (diff)
parent0230d51be8e336edbfa2a04c0f5bfdb9feaa6122 (diff)
downloadmariadb-git-4d7b6a6ea157bfa193376fb6367b64dd23e0d058.tar.gz
Automerge MySQL 5.1.44 merge into latest MariaDB trunk.
Diffstat (limited to 'sql/item_timefunc.cc')
-rw-r--r--sql/item_timefunc.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/sql/item_timefunc.cc b/sql/item_timefunc.cc
index 964edba4988..a244a674bbf 100644
--- a/sql/item_timefunc.cc
+++ b/sql/item_timefunc.cc
@@ -2560,9 +2560,9 @@ void Item_char_typecast::fix_length_and_dec()
from_cs != &my_charset_bin &&
cast_cs != &my_charset_bin);
collation.set(cast_cs, DERIVATION_IMPLICIT);
- char_length= (cast_length >= 0) ?
- cast_length :
- args[0]->max_length / args[0]->collation.collation->mbmaxlen;
+ char_length= (cast_length >= 0) ? cast_length :
+ args[0]->max_length /
+ (cast_cs == &my_charset_bin ? 1 : args[0]->collation.collation->mbmaxlen);
max_length= char_length * cast_cs->mbmaxlen;
}