summaryrefslogtreecommitdiff
path: root/sql/field.cc
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2004-01-19 14:22:38 +0100
committerunknown <serg@serg.mylan>2004-01-19 14:22:38 +0100
commit06de76aec5f3758bb07bdd66950aa4a8f2d5e4f4 (patch)
treef2ee6da6d2d7bcca5c3af0d8b4d158a1aa7095bd /sql/field.cc
parent62e9ab4515bedc12dfefeb7107b8c46e27494126 (diff)
downloadmariadb-git-06de76aec5f3758bb07bdd66950aa4a8f2d5e4f4.tar.gz
field length convertion (bytes->chars) should be done with rounding UP.
Diffstat (limited to 'sql/field.cc')
-rw-r--r--sql/field.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/sql/field.cc b/sql/field.cc
index 5602231dd9b..1a0716326fe 100644
--- a/sql/field.cc
+++ b/sql/field.cc
@@ -5611,16 +5611,16 @@ create_field::create_field(Field *old_field,Field *orig_field)
case 3: sql_type= FIELD_TYPE_MEDIUM_BLOB; break;
default: sql_type= FIELD_TYPE_LONG_BLOB; break;
}
- length /= charset->mbmaxlen; // QQ: Probably not needed
+ length=(length+charset->mbmaxlen-1)/charset->mbmaxlen; // QQ: Probably not needed
break;
case FIELD_TYPE_STRING:
case FIELD_TYPE_VAR_STRING:
- length /= charset->mbmaxlen;
+ length=(length+charset->mbmaxlen-1)/charset->mbmaxlen;
break;
default:
break;
}
-
+
decimals= old_field->decimals();
if (sql_type == FIELD_TYPE_STRING)
{