From 2e82008bacf85acafa1d657616690e442f997686 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 6 Dec 2003 19:05:26 +0100 Subject: [PATCH] fix for my_mbcharlen(charset, c) to return 1 for single-byte characters (isn't it obvious ?) mysys/charset.c: all charsets support my_mbcharlen - no need to protect it with use_mb() sql/sql_load.cc: all charsets support my_mbcharlen - no need to protect it with use_mb() --- mysys/charset.c | 2 +- sql/sql_load.cc | 5 ++--- strings/ctype-big5.c | 2 +- strings/ctype-euc_kr.c | 2 +- strings/ctype-gb2312.c | 2 +- strings/ctype-gbk.c | 2 +- strings/ctype-sjis.c | 2 +- strings/ctype-ujis.c | 2 +- 8 files changed, 9 insertions(+), 10 deletions(-) diff --git a/mysys/charset.c b/mysys/charset.c index e97ac0675d6..4111dd246cb 100644 --- a/mysys/charset.c +++ b/mysys/charset.c @@ -82,7 +82,7 @@ static void init_state_maps(CHARSET_INFO *cs) else if (my_isdigit(cs,i)) state_map[i]=(uchar) MY_LEX_NUMBER_IDENT; #if defined(USE_MB) && defined(USE_MB_IDENT) - else if (use_mb(cs) && (my_mbcharlen(cs, i)>1)) + else if (my_mbcharlen(cs, i)>1) state_map[i]=(uchar) MY_LEX_IDENT; #endif else if (!my_isgraph(cs,i)) diff --git a/sql/sql_load.cc b/sql/sql_load.cc index 0e7895689b5..0f39ab2663f 100644 --- a/sql/sql_load.cc +++ b/sql/sql_load.cc @@ -759,8 +759,7 @@ int READ_INFO::read_field() { chr = GET; #ifdef USE_MB - if (use_mb(read_charset) && - (my_mbcharlen(read_charset, chr) >1 )&& + if ((my_mbcharlen(read_charset, chr) > 1) && to+my_mbcharlen(read_charset, chr) <= end_of_buff) { uchar* p = (uchar*)to; @@ -946,7 +945,7 @@ int READ_INFO::next_line() { int chr = GET; #ifdef USE_MB - if (use_mb(read_charset) && (my_mbcharlen(read_charset, chr) >1 )) + if (my_mbcharlen(read_charset, chr) > 1) { for (int i=1; chr != my_b_EOF && i