Branch Coverage

_hex.c
Criterion Covered Total %
branch 50 72 69.4


line true false branch
31 0 45 const char hex_add = (upper_case ? 'A' - 10 : 'a' - 10);
32 1200 45 for (; length > 0; src++, length--) {
35 453 747 *dst++ = (hi > 9 ? hi + hex_add : hi + '0');
36 448 752 *dst++ = (lo > 9 ? lo + hex_add : lo + '0');
51 0 8 const char a = (upper_case ? 'A' : 'a');
55 252 8 while (src < e) {
56 128 124 if (shift > 3) {
60 123 5 if (src + 1 < e)
66 28 96 if (shift == 0) src++;
68 181 71 *dst++ = ( word < 26 ? word + a : word + '2' - 26 );
87 33 2 while (src < e) {
88 17 16 if (shift > 2) {
92 15 2 if (src + 1 < e)
98 7 9 if (shift == 0) src++;
100 26 7 *dst++ = ( word < 52 ? (word < 26 ? word + 'A' : word - 26 + 'a') : tail[word - 52]);
10 16 *dst++ = ( word < 52 ? (word < 26 ? word + 'A' : word - 26 + 'a') : tail[word - 52]);
102 2 0 if (shift > 0) {
104 1 1 if (shift == 4) *dst++ = '=';
118 0 2 if (url_encode) {
120 0 0 for (; length > 0; src += B64_CHUNK_SIZE) {
153 2 2 if (!dst) {
155 9 2 for (i = 0; i < size; i++)
156 9 0 if (!IS_URL_GOOD_CHAR(src[i]))
0 9 if (!IS_URL_GOOD_CHAR(src[i]))
160 0 2 const char hex_add = (upper_case ? 'A' - 10 : 'a' - 10);
163 9 2 for (i = 0; i < size; i++) {
164 9 0 if (IS_URL_GOOD_CHAR(src[i])) {
9 0 if (IS_URL_GOOD_CHAR(src[i])) {
170 0 0 *dst++ = (hi > 9 ? hi + hex_add : hi + '0');
171 0 0 *dst++ = (lo > 9 ? lo + hex_add : lo + '0');
194 0 10 if (dst == NULL) {
196 0 0 if (number == 0) return 1;
197 0 0 for (length = 0; number != 0; number /= 10) length++;
203 0 10 if (number == 0) {
206 48 0 for (; p >= buf && number != 0; number /= 10) {
38 10 for (; p >= buf && number != 0; number /= 10) {