summaryrefslogtreecommitdiff
path: root/sql/field.cc
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2004-10-26 20:31:41 +0200
committerunknown <serg@serg.mylan>2004-10-26 20:31:41 +0200
commitc882c26101149a3e06f27670cc14ef62c0cc2ab9 (patch)
treec7421140b78475bb87fd5eeb15e3a9107b07d93c /sql/field.cc
parent28db20e481276cb44cb637c8cc9975608046c5f3 (diff)
downloadmariadb-git-c882c26101149a3e06f27670cc14ef62c0cc2ab9.tar.gz
Bug #6019 - SELECT tries to use too short prefix index on utf8 data
Field_string::pack should respect max_length as Field_string::pack_key does
Diffstat (limited to 'sql/field.cc')
-rw-r--r--sql/field.cc16
1 files changed, 0 insertions, 16 deletions
diff --git a/sql/field.cc b/sql/field.cc
index aae507cd0ec..29ebf02f9f3 100644
--- a/sql/field.cc
+++ b/sql/field.cc
@@ -4425,24 +4425,8 @@ void Field_string::sql_type(String &res) const
res.length(length);
}
-
char *Field_string::pack(char *to, const char *from, uint max_length)
{
- const char *end=from+min(field_length,max_length);
- uint length;
- while (end > from && end[-1] == ' ')
- end--;
- length= (end-from);
- *to++= (char) (uchar) length;
- if (field_length > 255)
- *to++= (char) (uchar) (length >> 8);
- memcpy(to, from, (int) length);
- return to+length;
-}
-
-
-char *Field_string::pack_key(char *to, const char *from, uint max_length)
-{
uint length= min(field_length,max_length);
uint char_length= max_length/field_charset->mbmaxlen;
if (length > char_length)