diff options
author | bar@bar.mysql.r18.ru <> | 2002-10-09 15:40:57 +0500 |
---|---|---|
committer | bar@bar.mysql.r18.ru <> | 2002-10-09 15:40:57 +0500 |
commit | 954a47b95abd9540b6436303c5ba824ea74e083b (patch) | |
tree | 789cf07703286e15a43c1ad76c547ec3debe3a8b /sql | |
parent | 40c0fd1c6c1305a900a678f10555ed8727c7758c (diff) | |
download | mariadb-git-954a47b95abd9540b6436303c5ba824ea74e083b.tar.gz |
Simple charsets now have strncoll() field too
Diffstat (limited to 'sql')
-rw-r--r-- | sql/field.cc | 6 | ||||
-rw-r--r-- | sql/filesort.cc | 10 | ||||
-rw-r--r-- | sql/opt_range.cc | 2 | ||||
-rw-r--r-- | sql/sql_string.cc | 2 |
4 files changed, 10 insertions, 10 deletions
diff --git a/sql/field.cc b/sql/field.cc index 336bc9d7cc2..a65e9c4f7a4 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -3841,7 +3841,7 @@ void Field_string::sort_string(char *to,uint length) else { #ifdef USE_STRCOLL - if (use_strcoll(field_charset)) { + if (use_strnxfrm(field_charset)) { uint tmp=my_strnxfrm(field_charset, (unsigned char *)to, length, (unsigned char *) ptr, field_length); @@ -4045,7 +4045,7 @@ void Field_varstring::sort_string(char *to,uint length) else { #ifdef USE_STRCOLL - if (use_strcoll(field_charset)) + if (use_strnxfrm(field_charset)) tot_length=my_strnxfrm(field_charset, (unsigned char *) to, length, (unsigned char *)ptr+2, tot_length); @@ -4536,7 +4536,7 @@ void Field_blob::sort_string(char *to,uint length) else { #ifdef USE_STRCOLL - if (use_strcoll(field_charset)) + if (use_strnxfrm(field_charset)) { blob_length=my_strnxfrm(field_charset, (unsigned char *)to, length, diff --git a/sql/filesort.cc b/sql/filesort.cc index 4d877c92dba..81629684a87 100644 --- a/sql/filesort.cc +++ b/sql/filesort.cc @@ -140,7 +140,7 @@ ha_rows filesort(TABLE *table, SORT_FIELD *sortorder, uint s_length, records=param.max_rows; /* purecov: inspected */ #ifdef USE_STRCOLL - if (use_strcoll(charset) && + if (use_strnxfrm(charset) && !(param.tmp_buffer=my_malloc(param.sort_length,MYF(MY_WME)))) goto err; #endif @@ -511,7 +511,7 @@ static void make_sortkey(register SORTPARAM *param, length=sort_field->length; } #ifdef USE_STRCOLL - if(use_strcoll(cs)) + if(use_strnxfrm(cs)) { if (item->binary) { @@ -541,7 +541,7 @@ static void make_sortkey(register SORTPARAM *param, memcpy(to,res->ptr(),length); bzero((char *)to+length,diff); if (!item->binary) - case_sort(cs, (char*) to,length); + my_tosort(cs, (char*) to,length); #ifdef USE_STRCOLL } #endif @@ -946,7 +946,7 @@ sortlength(SORT_FIELD *sortorder, uint s_length) if (!sortorder->field->binary()) { CHARSET_INFO *cs=((Field_str*)(sortorder->field))->charset(); - if (use_strcoll(cs)) + if (use_strnxfrm(cs)) sortorder->length= sortorder->length*cs->strxfrm_multiply; } #endif @@ -966,7 +966,7 @@ sortlength(SORT_FIELD *sortorder, uint s_length) if (!sortorder->item->binary) { CHARSET_INFO *cs=sortorder->item->str_value.charset(); - if (use_strcoll(cs)) + if (use_strnxfrm(cs)) sortorder->length= sortorder->length*cs->strxfrm_multiply; } #endif diff --git a/sql/opt_range.cc b/sql/opt_range.cc index ed5b2b0a230..2b0ac08fe95 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -978,7 +978,7 @@ get_mm_leaf(PARAM *param, Field *field, KEY_PART *key_part, { CHARSET_INFO *charset=((Field_str*)(field))->charset(); #ifdef USE_STRCOLL - if (use_strcoll(charset)) + if (use_strnxfrm(charset)) like_error= my_like_range(charset, res->ptr(),res->length(),wild_prefix, field_length, min_str+maybe_null, diff --git a/sql/sql_string.cc b/sql/sql_string.cc index 6a42078cbcd..d2d14d4e7a2 100644 --- a/sql/sql_string.cc +++ b/sql/sql_string.cc @@ -505,7 +505,7 @@ int sortcmp(const String *x,const String *y) uint32 x_len=x->length(),y_len=y->length(),len=min(x_len,y_len); #ifdef USE_STRCOLL - if (use_strcoll(x->str_charset)) + if (use_strnxfrm(x->str_charset)) { #ifndef CMP_ENDSPACE while (x_len && my_isspace(x->str_charset,s[x_len-1])) |