libutf: utf32be_to_utf8: fix constants
This commit is contained in:
parent
55fdca9123
commit
dc4091b43f
@ -98,17 +98,17 @@ utf32be_to_utf8(rune_t c, size_t m){
|
||||
| 0x00800000 /* UTF-8 b24-23 */
|
||||
| ((c & 0x03F000) << 4); /* UTF-32 b18-13 -> UTF-8 b24-17 */
|
||||
if(m == 3)
|
||||
case 3: r = (0xE << 4) /* UTF-8 b24-21 */
|
||||
case 3: r = 0x00E00000 /* 0xE == 0b1110 */ /* UTF-8 b24-21 */
|
||||
| ((c & 0x00F000) << 4); /* UTF-32 b16-13 -> UTF-8 b20-17 */
|
||||
r |= 0x00008000 /* UTF-8 b16-15 */
|
||||
| ((c & 0x000FC0) << 2); /* UTF-32 b12- 7 -> UTF-8 b14- 9 */
|
||||
if(m == 2)
|
||||
case 2: r = (0xE << 3) /* UTF-8 b16-14 */
|
||||
case 2: r = 0x0000C000 /* 0xC == 0b1100 */ /* UTF-8 b16-14 */
|
||||
| ((c & 0x007C00) << 2); /* UTF-32 b11- 7 -> UTF-8 b13- 9 */
|
||||
r |= 0x00000080 /* UTF-8 b 8- 7 */
|
||||
| (c & 0x00003F); /* UTF-8 b 6- 1 */
|
||||
if(m == 1)
|
||||
case 1: r = c & 0x00007F; /* UTF-8 b 7- 1 */
|
||||
case 1: r = c & 0x00007F; /* 0x7 == 0b0111 */ /* UTF-8 b 7- 1 */
|
||||
}
|
||||
return r;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user