Commit 96a73173 authored by bar@mysql.com's avatar bar@mysql.com

ctype-mb.c:

  Remove unnesessary code: use_mb is always TRUE for the multibyte charsets.
parent 391a086d
...@@ -123,8 +123,7 @@ int my_strcasecmp_mb(CHARSET_INFO * cs,const char *s, const char *t) ...@@ -123,8 +123,7 @@ int my_strcasecmp_mb(CHARSET_INFO * cs,const char *s, const char *t)
** 1 if matched with wildcard ** 1 if matched with wildcard
*/ */
#define INC_PTR(cs,A,B) A+=((use_mb_flag && \ #define INC_PTR(cs,A,B) A+=(my_ismbchar(cs,A,B) ? my_ismbchar(cs,A,B) : 1)
my_ismbchar(cs,A,B)) ? my_ismbchar(cs,A,B) : 1)
#define likeconv(s,A) (uchar) (s)->sort_order[(uchar) (A)] #define likeconv(s,A) (uchar) (s)->sort_order[(uchar) (A)]
...@@ -135,8 +134,6 @@ int my_wildcmp_mb(CHARSET_INFO *cs, ...@@ -135,8 +134,6 @@ int my_wildcmp_mb(CHARSET_INFO *cs,
{ {
int result= -1; /* Not found, using wildcards */ int result= -1; /* Not found, using wildcards */
bool use_mb_flag=use_mb(cs);
while (wildstr != wildend) while (wildstr != wildend)
{ {
while (*wildstr != w_many && *wildstr != w_one) while (*wildstr != w_many && *wildstr != w_one)
...@@ -144,8 +141,7 @@ int my_wildcmp_mb(CHARSET_INFO *cs, ...@@ -144,8 +141,7 @@ int my_wildcmp_mb(CHARSET_INFO *cs,
int l; int l;
if (*wildstr == escape && wildstr+1 != wildend) if (*wildstr == escape && wildstr+1 != wildend)
wildstr++; wildstr++;
if (use_mb_flag && if ((l = my_ismbchar(cs, wildstr, wildend)))
(l = my_ismbchar(cs, wildstr, wildend)))
{ {
if (str+l > str_end || memcmp(str, wildstr, l) != 0) if (str+l > str_end || memcmp(str, wildstr, l) != 0)
return 1; return 1;
...@@ -200,14 +196,10 @@ int my_wildcmp_mb(CHARSET_INFO *cs, ...@@ -200,14 +196,10 @@ int my_wildcmp_mb(CHARSET_INFO *cs,
cmp= *++wildstr; cmp= *++wildstr;
mb=wildstr; mb=wildstr;
LINT_INIT(mblen); mblen= my_ismbchar(cs, wildstr, wildend);
if (use_mb_flag)
mblen = my_ismbchar(cs, wildstr, wildend);
INC_PTR(cs,wildstr,wildend); /* This is compared trough cmp */ INC_PTR(cs,wildstr,wildend); /* This is compared trough cmp */
cmp=likeconv(cs,cmp); cmp=likeconv(cs,cmp);
do do
{
if (use_mb_flag)
{ {
for (;;) for (;;)
{ {
...@@ -229,13 +221,6 @@ int my_wildcmp_mb(CHARSET_INFO *cs, ...@@ -229,13 +221,6 @@ int my_wildcmp_mb(CHARSET_INFO *cs,
} }
INC_PTR(cs,str, str_end); INC_PTR(cs,str, str_end);
} }
}
else
{
while (str != str_end && likeconv(cs,*str) != cmp)
str++;
if (str++ == str_end) return (-1);
}
{ {
int tmp=my_wildcmp_mb(cs,str,str_end,wildstr,wildend,escape,w_one, int tmp=my_wildcmp_mb(cs,str,str_end,wildstr,wildend,escape,w_one,
w_many); w_many);
...@@ -555,8 +540,6 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs, ...@@ -555,8 +540,6 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs,
{ {
int result= -1; /* Not found, using wildcards */ int result= -1; /* Not found, using wildcards */
bool use_mb_flag=use_mb(cs);
while (wildstr != wildend) while (wildstr != wildend)
{ {
while (*wildstr != w_many && *wildstr != w_one) while (*wildstr != w_many && *wildstr != w_one)
...@@ -564,8 +547,7 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs, ...@@ -564,8 +547,7 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs,
int l; int l;
if (*wildstr == escape && wildstr+1 != wildend) if (*wildstr == escape && wildstr+1 != wildend)
wildstr++; wildstr++;
if (use_mb_flag && if ((l = my_ismbchar(cs, wildstr, wildend)))
(l = my_ismbchar(cs, wildstr, wildend)))
{ {
if (str+l > str_end || memcmp(str, wildstr, l) != 0) if (str+l > str_end || memcmp(str, wildstr, l) != 0)
return 1; return 1;
...@@ -620,13 +602,9 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs, ...@@ -620,13 +602,9 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs,
cmp= *++wildstr; cmp= *++wildstr;
mb=wildstr; mb=wildstr;
LINT_INIT(mblen); mblen= my_ismbchar(cs, wildstr, wildend);
if (use_mb_flag)
mblen = my_ismbchar(cs, wildstr, wildend);
INC_PTR(cs,wildstr,wildend); /* This is compared trough cmp */ INC_PTR(cs,wildstr,wildend); /* This is compared trough cmp */
do do
{
if (use_mb_flag)
{ {
for (;;) for (;;)
{ {
...@@ -647,13 +625,6 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs, ...@@ -647,13 +625,6 @@ static int my_wildcmp_mb_bin(CHARSET_INFO *cs,
} }
INC_PTR(cs,str, str_end); INC_PTR(cs,str, str_end);
} }
}
else
{
while (str != str_end && *str != cmp)
str++;
if (str++ == str_end) return (-1);
}
{ {
int tmp=my_wildcmp_mb_bin(cs,str,str_end,wildstr,wildend,escape,w_one,w_many); int tmp=my_wildcmp_mb_bin(cs,str,str_end,wildstr,wildend,escape,w_one,w_many);
if (tmp <= 0) if (tmp <= 0)
......
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