mirror of
https://github.com/MariaDB/server.git
synced 2026-05-03 13:45:34 +02:00
merge mysql-5.5->mysql-5.5-bugteam
This commit is contained in:
commit
74e2520cd9
51 changed files with 883 additions and 365 deletions
|
|
@ -1464,7 +1464,7 @@ my_strnncoll_utf16_bin(CHARSET_INFO *cs,
|
|||
}
|
||||
if (s_wc != t_wc)
|
||||
{
|
||||
return my_bincmp(s, s + s_res, t, t + t_res);
|
||||
return s_wc > t_wc ? 1 : -1;
|
||||
}
|
||||
|
||||
s+= s_res;
|
||||
|
|
@ -1504,7 +1504,7 @@ my_strnncollsp_utf16_bin(CHARSET_INFO *cs,
|
|||
|
||||
if (s_wc != t_wc)
|
||||
{
|
||||
return my_bincmp(s, s + s_res, t, t + t_res);
|
||||
return s_wc > t_wc ? 1 : -1;
|
||||
}
|
||||
|
||||
s+= s_res;
|
||||
|
|
|
|||
|
|
@ -1967,17 +1967,6 @@ my_strnxfrm_unicode_full_bin(CHARSET_INFO *cs,
|
|||
if ((res= cs->cset->mb_wc(cs, &wc, src, se)) <= 0)
|
||||
break;
|
||||
src+= res;
|
||||
if (cs->mbminlen == 2) /* utf16_bin */
|
||||
{
|
||||
/*
|
||||
Reorder code points to weights as follows:
|
||||
U+0000..U+D7FF -> [00][00][00]..[00][D7][FF] BMP part #1
|
||||
U+10000..U+10FFFF -> [01][00][00]..[10][FF][FF] Supplementary
|
||||
U+E000..U+FFFF -> [20][E0][00]..[20][FF][FF] BMP part #2
|
||||
*/
|
||||
if (wc >= 0xE000 && wc <= 0xFFFF)
|
||||
wc+= 0x200000;
|
||||
}
|
||||
*dst++= (uchar) (wc >> 16);
|
||||
*dst++= (uchar) ((wc >> 8) & 0xFF);
|
||||
*dst++= (uchar) (wc & 0xFF);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue