summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorbar@bar.mysql.r18.ru <>2002-10-09 15:40:57 +0500
committerbar@bar.mysql.r18.ru <>2002-10-09 15:40:57 +0500
commit954a47b95abd9540b6436303c5ba824ea74e083b (patch)
tree789cf07703286e15a43c1ad76c547ec3debe3a8b /sql
parent40c0fd1c6c1305a900a678f10555ed8727c7758c (diff)
downloadmariadb-git-954a47b95abd9540b6436303c5ba824ea74e083b.tar.gz
Simple charsets now have strncoll() field too
Diffstat (limited to 'sql')
-rw-r--r--sql/field.cc6
-rw-r--r--sql/filesort.cc10
-rw-r--r--sql/opt_range.cc2
-rw-r--r--sql/sql_string.cc2
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]))