filesort.cc:

  Fixed that i mixed Field and Item in some cases
parent 21ef10ef
...@@ -470,8 +470,7 @@ static void make_sortkey(register SORTPARAM *param, ...@@ -470,8 +470,7 @@ static void make_sortkey(register SORTPARAM *param,
switch (sort_field->result_type) { switch (sort_field->result_type) {
case STRING_RESULT: case STRING_RESULT:
{ {
// BAR TODO: need checking that it is really Field_str based class CHARSET_INFO *cs=item->str_value.charset();
CHARSET_INFO *cs=((Field_str*)(sort_field->field))->charset();
if (item->maybe_null) if (item->maybe_null)
*to++=1; *to++=1;
...@@ -948,8 +947,7 @@ sortlength(SORT_FIELD *sortorder, uint s_length) ...@@ -948,8 +947,7 @@ sortlength(SORT_FIELD *sortorder, uint s_length)
#ifdef USE_STRCOLL #ifdef USE_STRCOLL
if (!sortorder->item->binary) if (!sortorder->item->binary)
{ {
// BAR TODO: need checking that it is really Field_str based class CHARSET_INFO *cs=sortorder->item->str_value.charset();
CHARSET_INFO *cs=((Field_str*)(sortorder->field))->charset();
if (use_strcoll(cs)) if (use_strcoll(cs))
sortorder->length= sortorder->length*cs->strxfrm_multiply; sortorder->length= sortorder->length*cs->strxfrm_multiply;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment