Line | Source | Count |
1 | | - |
2 | | - |
3 | | - |
4 | int | - |
5 | u8_mbtoucr (ucs4_t *puc, const uint8_t *s, size_t n) | - |
6 | { | - |
7 | uint8_t c = *s; | - |
8 | | - |
9 | if (c < 0x80TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
10 | { | - |
11 | *puc = c; | - |
12 | return never executed: return 1; 1;never executed: return 1; | 0 |
13 | } | - |
14 | else if (c >= 0xc2TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
15 | { | - |
16 | if (c < 0xe0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
17 | { | - |
18 | if (n >= 2TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
19 | { | - |
20 | if ((TRUE | never evaluated | FALSE | never evaluated |
s[1] ^ 0x80) < 0x40TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
21 | { | - |
22 | *puc = ((unsigned int) (c & 0x1f) << 6) | - |
23 | | (unsigned int) (s[1] ^ 0x80); | - |
24 | return never executed: return 2; 2;never executed: return 2; | 0 |
25 | } | - |
26 | | - |
27 | } never executed: end of block | 0 |
28 | else | - |
29 | { | - |
30 | | - |
31 | *puc = 0xfffd; | - |
32 | return never executed: return -2; -2;never executed: return -2; | 0 |
33 | } | - |
34 | } | - |
35 | else if (c < 0xf0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
36 | { | - |
37 | if (n >= 2TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
38 | { | - |
39 | if ((TRUE | never evaluated | FALSE | never evaluated |
s[1] ^ 0x80) < 0x40TRUE | never evaluated | FALSE | never evaluated |
| 0 |
40 | && (c >= 0xe1TRUE | never evaluated | FALSE | never evaluated |
|| s[1] >= 0xa0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
41 | && (c != 0xedTRUE | never evaluated | FALSE | never evaluated |
|| s[1] < 0xa0TRUE | never evaluated | FALSE | never evaluated |
)) | 0 |
42 | { | - |
43 | if (n >= 3TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
44 | { | - |
45 | if ((TRUE | never evaluated | FALSE | never evaluated |
s[2] ^ 0x80) < 0x40TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
46 | { | - |
47 | *puc = ((unsigned int) (c & 0x0f) << 12) | - |
48 | | ((unsigned int) (s[1] ^ 0x80) << 6) | - |
49 | | (unsigned int) (s[2] ^ 0x80); | - |
50 | return never executed: return 3; 3;never executed: return 3; | 0 |
51 | } | - |
52 | | - |
53 | } never executed: end of block | 0 |
54 | else | - |
55 | { | - |
56 | | - |
57 | *puc = 0xfffd; | - |
58 | return never executed: return -2; -2;never executed: return -2; | 0 |
59 | } | - |
60 | } | - |
61 | | - |
62 | } never executed: end of block | 0 |
63 | else | - |
64 | { | - |
65 | | - |
66 | *puc = 0xfffd; | - |
67 | return never executed: return -2; -2;never executed: return -2; | 0 |
68 | } | - |
69 | } | - |
70 | else if (c < 0xf8TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
71 | { | - |
72 | if (n >= 2TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
73 | { | - |
74 | if ((TRUE | never evaluated | FALSE | never evaluated |
s[1] ^ 0x80) < 0x40TRUE | never evaluated | FALSE | never evaluated |
| 0 |
75 | && (c >= 0xf1TRUE | never evaluated | FALSE | never evaluated |
|| s[1] >= 0x90TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
76 | && (c < 0xf4TRUE | never evaluated | FALSE | never evaluated |
|| (c == 0xf4TRUE | never evaluated | FALSE | never evaluated |
&& s[1] < 0x90TRUE | never evaluated | FALSE | never evaluated |
))) | 0 |
77 | { | - |
78 | if (n >= 3TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
79 | { | - |
80 | if ((TRUE | never evaluated | FALSE | never evaluated |
s[2] ^ 0x80) < 0x40TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
81 | { | - |
82 | if (n >= 4TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
83 | { | - |
84 | if ((TRUE | never evaluated | FALSE | never evaluated |
s[3] ^ 0x80) < 0x40TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
85 | { | - |
86 | *puc = ((unsigned int) (c & 0x07) << 18) | - |
87 | | ((unsigned int) (s[1] ^ 0x80) << 12) | - |
88 | | ((unsigned int) (s[2] ^ 0x80) << 6) | - |
89 | | (unsigned int) (s[3] ^ 0x80); | - |
90 | return never executed: return 4; 4;never executed: return 4; | 0 |
91 | } | - |
92 | | - |
93 | } never executed: end of block | 0 |
94 | else | - |
95 | { | - |
96 | | - |
97 | *puc = 0xfffd; | - |
98 | return never executed: return -2; -2;never executed: return -2; | 0 |
99 | } | - |
100 | } | - |
101 | | - |
102 | } never executed: end of block | 0 |
103 | else | - |
104 | { | - |
105 | | - |
106 | *puc = 0xfffd; | - |
107 | return never executed: return -2; -2;never executed: return -2; | 0 |
108 | } | - |
109 | } | - |
110 | | - |
111 | } never executed: end of block | 0 |
112 | else | - |
113 | { | - |
114 | | - |
115 | *puc = 0xfffd; | - |
116 | return never executed: return -2; -2;never executed: return -2; | 0 |
117 | } | - |
118 | } | - |
119 | } never executed: end of block | 0 |
120 | | - |
121 | *puc = 0xfffd; | - |
122 | return never executed: return -1; -1;never executed: return -1; | 0 |
123 | } | - |
| | |