summaryrefslogtreecommitdiff
path: root/strings/ctype-ucs2.c
diff options
context:
space:
mode:
authorunknown <msvensson@msdesk.(none)>2005-10-06 14:40:18 +0200
committerunknown <msvensson@msdesk.(none)>2005-10-06 14:40:18 +0200
commitdf76450716d0550d8313f5d4afecd0e105558b5a (patch)
tree734fdb74393f521e44d3e254c283586558f54ca4 /strings/ctype-ucs2.c
parent3c2dca475dfa91c95f2488831fafacacaf852347 (diff)
parente6ec5794f64617dda0cfdeb4bae422cff6d81950 (diff)
downloadmariadb-git-df76450716d0550d8313f5d4afecd0e105558b5a.tar.gz
Merge msdesk.(none):/home/msvensson/mysql-4.1
into msdesk.(none):/home/msvensson/mysql-5.0 BUILD/SETUP.sh: Auto merged BitKeeper/deleted/.del-ctype-cp932.c: Auto merged BitKeeper/deleted/.del-ctype_cp932.result: Auto merged BitKeeper/deleted/.del-ctype_cp932.test: Auto merged BitKeeper/deleted/.del-ndb_range_bounds.pl~ff7e47a35fb44c74: Auto merged innobase/os/os0sync.c: Auto merged mysql-test/r/ctype_tis620.result: Auto merged mysql-test/r/ctype_ucs.result: Auto merged mysql-test/r/ctype_utf8.result: Auto merged mysql-test/t/ctype_uca.test: Auto merged mysql-test/t/ctype_ucs.test: Auto merged mysql-test/t/ctype_ujis.test: Auto merged mysql-test/t/ctype_utf8.test: Auto merged sql/ha_innodb.cc: Auto merged sql/item_cmpfunc.cc: Auto merged strings/ctype-big5.c: Auto merged strings/ctype-gbk.c: Auto merged strings/ctype-simple.c: Auto merged strings/ctype-sjis.c: Auto merged strings/ctype-ucs2.c: Auto merged client/mysql.cc: Sam change in both 4.1 and 5.0 mysql-test/r/ctype_uca.result: Merge mysql-test/r/ctype_ujis.result: Merge strings/ctype-mb.c: Merge strings/ctype-tis620.c: Merge
Diffstat (limited to 'strings/ctype-ucs2.c')
-rw-r--r--strings/ctype-ucs2.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/strings/ctype-ucs2.c b/strings/ctype-ucs2.c
index 41ab055d2de..c389f2e7f75 100644
--- a/strings/ctype-ucs2.c
+++ b/strings/ctype-ucs2.c
@@ -1450,10 +1450,12 @@ my_bool my_like_range_ucs2(CHARSET_INFO *cs,
const char *end=ptr+ptr_length;
char *min_org=min_str;
char *min_end=min_str+res_length;
+ uint charlen= res_length / cs->mbmaxlen;
- for (; ptr + 1 < end && min_str + 1 < min_end ; ptr+=2)
+ for ( ; ptr + 1 < end && min_str + 1 < min_end && charlen > 0
+ ; ptr+=2, charlen--)
{
- if (ptr[0] == '\0' && ptr[1] == escape && ptr+2 < end)
+ if (ptr[0] == '\0' && ptr[1] == escape && ptr + 1 < end)
{
ptr+=2; /* Skip escape */
*min_str++= *max_str++ = ptr[0];