Branch Coverage

src/pdfmake_filter.c
Criterion Covered Total %
branch 424 720 58.8


line true false branch
29 356 31 while (len > 0) {
33 1857008 356 while (chunk--) {
51 0 113 if (!params) return;
93 860285 4814798 while (br->nbits < n) {
94 2 860283 if (br->pos >= br->len) return -1;
113 0 0 if (val < 0) return -1;
117 0 0 for (i = 0; i < n; i++) {
145 120995 1110 for (i = 0; i < n; i++) {
146 0 120995 if (lengths[i] > HUFFMAN_MAX_BITS) return -1;
153 16650 1110 for (i = 1; i <= HUFFMAN_MAX_BITS; i++) {
159 120995 1110 for (i = 0; i < n; i++) {
160 60642 60353 if (lengths[i] > 0) {
176 4532412 0 for (len = 1; len <= HUFFMAN_MAX_BITS; len++) {
179 0 4532412 if (bit < 0) return -1;
184 920172 3612240 if (code - first < count) {
208 106 15 if (fixed_tables_built) return;
211 2160 15 for (i = 0; i <= 143; i++) lit_lengths[i] = 8;
212 1680 15 for (i = 144; i <= 255; i++) lit_lengths[i] = 9;
213 360 15 for (i = 256; i <= 279; i++) lit_lengths[i] = 7;
214 120 15 for (i = 280; i <= 287; i++) lit_lengths[i] = 8;
217 480 15 for (i = 0; i < 32; i++) dist_lengths[i] = 5;
274 0 610866 if (sym < 0) return PDFMAKE_ECORRUPT;
276 355316 255550 if (sym < 256) {
278 0 355316 if (pdfmake_buf_append_byte(out, (uint8_t)sym) != PDFMAKE_OK)
281 502 255048 else if (sym == 256) {
288 0 255048 if (sym >= 29) return PDFMAKE_ECORRUPT;
291 27338 227710 if (length_extra[sym] > 0) {
293 0 27338 if (extra < 0) return PDFMAKE_ECORRUPT;
298 255048 0 if (dist_sym < 0 || dist_sym >= 30) return PDFMAKE_ECORRUPT;
0 255048 if (dist_sym < 0 || dist_sym >= 30) return PDFMAKE_ECORRUPT;
301 245075 9973 if (dist_extra[dist_sym] > 0) {
303 0 245075 if (extra < 0) return PDFMAKE_ECORRUPT;
308 0 255048 if ((size_t)dist > out->len) return PDFMAKE_ECORRUPT;
310 3328576 255048 for (i = 0; i < len; i++) {
312 0 3328576 if (pdfmake_buf_append_byte(out, byte) != PDFMAKE_OK)
325 57710 2613 while (count-- > 0 && n < target) lengths[n++] = val;
57710 0 while (count-- > 0 && n < target) lengths[n++] = val;
339 0 3 if (br->pos + 4 > br->len) return PDFMAKE_ECORRUPT;
344 0 3 if (len != (uint16_t)~nlen) return PDFMAKE_ECORRUPT;
345 0 3 if (br->pos + len > br->len) return PDFMAKE_ECORRUPT;
347 0 3 if (pdfmake_buf_append(out, br->data + br->pos, len) != PDFMAKE_OK)
373 360 0 if (hlit < 0 || hdist < 0 || hclen < 0) return PDFMAKE_ECORRUPT;
360 0 if (hlit < 0 || hdist < 0 || hclen < 0) return PDFMAKE_ECORRUPT;
0 360 if (hlit < 0 || hdist < 0 || hclen < 0) return PDFMAKE_ECORRUPT;
380 5270 360 for (i = 0; i < hclen; i++) {
382 0 5270 if (code_len < 0) return PDFMAKE_ECORRUPT;
386 0 360 if (huffman_build(&cl_huff, cl_lengths, 19) < 0) return PDFMAKE_ECORRUPT;
390 54258 360 while (n < hlit + hdist) {
392 0 54258 if (sym < 0) return PDFMAKE_ECORRUPT;
394 51645 2613 if (sym < 16) {
396 1258 1355 } else if (sym == 16) {
398 1258 0 if (extra < 0 || n == 0) return PDFMAKE_ECORRUPT;
0 1258 if (extra < 0 || n == 0) return PDFMAKE_ECORRUPT;
401 847 508 } else if (sym == 17) {
403 0 847 if (extra < 0) return PDFMAKE_ECORRUPT;
405 508 0 } else if (sym == 18) {
407 0 508 if (extra < 0) return PDFMAKE_ECORRUPT;
412 0 360 if (huffman_build(&dyn_lit_len, lengths, hlit) < 0) return PDFMAKE_ECORRUPT;
413 0 360 if (huffman_build(&dyn_dist, lengths + hlit, hdist) < 0) return PDFMAKE_ECORRUPT;
425 121 0 if (!in || !out) return PDFMAKE_EINVAL;
0 121 if (!in || !out) return PDFMAKE_EINVAL;
433 505 1 if (bfinal < 0 || btype < 0) return PDFMAKE_ECORRUPT;
0 505 if (bfinal < 0 || btype < 0) return PDFMAKE_ECORRUPT;
441 0 505 if (err != PDFMAKE_OK) return err;
442 385 120 } while (!bfinal);
469 824267 886834 while (bw->nbits >= 8) {
470 0 824267 if (pdfmake_buf_append_byte(bw->out, bw->bits & 0xFF) != PDFMAKE_OK)
481 14 17 if (bw->nbits > 0) {
482 0 14 if (pdfmake_buf_append_byte(bw->out, bw->bits & 0xFF) != PDFMAKE_OK)
495 20336 2544 for (i = 0; i < n; i++) {
513 23 8 if (fixed_encode_tables_built) return;
519 192 8 for (i = 256; i <= 279; i++) {
526 1152 8 for (i = 0; i <= 143; i++) {
533 64 8 for (i = 280; i <= 287; i++) {
540 896 8 for (i = 144; i <= 255; i++) {
546 240 8 for (i = 0; i < 30; i++) {
558 712936 0 for (i = 0; i < 29; i++) {
560 260274 452662 if (length <= max_len) return i;
569 6085917 0 for (i = 0; i < 30; i++) {
571 260274 5825643 if (dist <= max_dist) return i;
613 57 1856995 if (pos + 2 >= lz->len) return;
633 17 358316 if (pos + MIN_MATCH > lz->len) return 0;
639 8836066 178970 while (match_pos >= 0 && chain_len < MAX_CHAIN) {
8800919 35147 while (match_pos >= 0 && chain_len < MAX_CHAIN) {
641 143505 8657414 if (dist > WINDOW_SIZE) break;
642 0 8657414 if (dist <= 0) break;
650 8655229 2185 if (max_len > MAX_MATCH) max_len = MAX_MATCH;
652 53431818 2873 while ((size_t)len < max_len && a[len] == b[len]) len++;
44777277 8654541 while ((size_t)len < max_len && a[len] == b[len]) len++;
654 8649623 7791 if (len >= MIN_MATCH && len > *match_len) {
443469 8206154 if (len >= MIN_MATCH && len > *match_len) {
657 694 442775 if (len >= MAX_MATCH) break;
677 0 32 if (!out) return PDFMAKE_EINVAL;
678 1 31 if (in_len == 0) {
688 2 29 if (level == 0) {
695 2 2 while (pos < in_len) {
697 0 2 if (block_len > 65535) block_len = 65535;
730 358333 29 while (pos < in_len) {
731 260274 98059 if (lz77_find_match(&lz, pos, &match_dist, &match_len)) {
736 11934 248340 if (length_extra[len_code] > 0) {
744 256202 4072 if (dist_extra[dist_code] > 0) {
750 1758993 260274 for (i = 0; i < match_len; i++) {
785 116 0 if (!in || !out) return PDFMAKE_EINVAL;
0 116 if (!in || !out) return PDFMAKE_EINVAL;
786 0 116 if (in_len < 6) return PDFMAKE_ECORRUPT; /* Min: 2 header + 4 Adler-32 */
793 0 116 if ((cmf * 256 + flg) % 31 != 0) return PDFMAKE_ECORRUPT;
796 0 116 if ((cmf & 0x0F) != 8) return PDFMAKE_EUNSUPPORTED;
802 0 116 if (flg & 0x20) return PDFMAKE_EUNSUPPORTED;
806 0 116 if (pdfmake_buf_init(&raw) != PDFMAKE_OK) return PDFMAKE_ENOMEM;
809 1 115 if (err != PDFMAKE_OK) {
820 115 0 if (params && params->predictor > 1) {
0 115 if (params && params->predictor > 1) {
822 0 0 if (pdfmake_buf_init(&pred_out) != PDFMAKE_OK) {
827 0 0 if (params->predictor == 2) {
832 0 0 } else if (params->predictor >= 10 && params->predictor <= 15) {
0 0 } else if (params->predictor >= 10 && params->predictor <= 15) {
843 0 0 if (err != PDFMAKE_OK) {
849 0 0 if (pdfmake_buf_append(out, pred_out.data, pred_out.len) != PDFMAKE_OK) {
857 0 115 if (pdfmake_buf_append(out, raw.data, raw.len) != PDFMAKE_OK) {
874 0 27 if (!out) return PDFMAKE_EINVAL;
876 0 27 if (pdfmake_buf_init(&raw) != PDFMAKE_OK) return PDFMAKE_ENOMEM;
879 27 0 if (params && params->predictor > 1) {
15 12 if (params && params->predictor > 1) {
880 0 15 if (params->predictor == 2) {
885 15 0 } else if (params->predictor >= 10 && params->predictor <= 15) {
15 0 } else if (params->predictor >= 10 && params->predictor <= 15) {
896 0 15 if (err != PDFMAKE_OK) {
903 0 12 if (pdfmake_buf_append(&raw, in, in_len) != PDFMAKE_OK) {
916 0 27 if (err != PDFMAKE_OK) {
944 1507812 470616 if (pa <= pb && pa <= pc) return a;
1478397 29415 if (pa <= pb && pa <= pc) return a;
945 459846 40185 if (pb <= pc) return b;
962 22 0 if (!in || !out) return PDFMAKE_EINVAL;
0 22 if (!in || !out) return PDFMAKE_EINVAL;
971 0 22 if (in_len % in_row_size != 0) {
973 0 0 if (predictor == 10) {
983 0 22 if (!prev_row) return PDFMAKE_ENOMEM;
987 0 22 if (!curr_row) {
992 5142 22 for (r = 0; r < num_rows; r++) {
998 1780128 5142 for (i = 0; i < row_bytes; i++) {
1000 1774986 5142 uint8_t a = (i >= bpp) ? curr_row[i - bpp] : 0;
1002 1774986 5142 uint8_t c = (i >= bpp) ? prev_row[i - bpp] : 0;
1030 0 5142 if (pdfmake_buf_append(out, curr_row, row_bytes) != PDFMAKE_OK) {
1058 22 0 if (!in || !out) return PDFMAKE_EINVAL;
0 22 if (!in || !out) return PDFMAKE_EINVAL;
1063 0 22 if (in_len % row_bytes != 0) return PDFMAKE_EINVAL;
1069 0 22 if (!prev_row) return PDFMAKE_ENOMEM;
1073 0 22 if (!filtered) {
1078 5142 22 for (r = 0; r < num_rows; r++) {
1082 5119 23 if (predictor == 15) {
1087 25595 5119 for (f = 0; f <= 4; f++) {
1089 8900180 25595 for (i = 0; i < row_bytes; i++) {
1090 8874585 25595 uint8_t a = (i >= bpp) ? curr_row[i - bpp] : 0;
1092 8874585 25595 uint8_t c = (i >= bpp) ? prev_row[i - bpp] : 0;
1105 17141 8454 if (sum < best_sum) {
1114 20 3 if (filter_type < 0 || filter_type > 4) filter_type = 0;
0 20 if (filter_type < 0 || filter_type > 4) filter_type = 0;
1118 1780128 5142 for (i = 0; i < row_bytes; i++) {
1119 1774986 5142 uint8_t a = (i >= bpp) ? curr_row[i - bpp] : 0;
1121 1774986 5142 uint8_t c = (i >= bpp) ? prev_row[i - bpp] : 0;
1144 0 5142 if (pdfmake_buf_append(out, filtered, row_bytes) != PDFMAKE_OK) {
1173 1 0 if (!in || !out) return PDFMAKE_EINVAL;
0 1 if (!in || !out) return PDFMAKE_EINVAL;
1176 0 1 if (bits_per_comp != 8) return PDFMAKE_EUNSUPPORTED;
1179 0 1 if (in_len % row_bytes != 0) return PDFMAKE_EINVAL;
1185 0 1 if (!row) return PDFMAKE_ENOMEM;
1187 1 1 for (r = 0; r < num_rows; r++) {
1191 1 1 for (c = 0; c < colors; c++) {
1196 5 1 for (i = colors; i < row_bytes; i++) {
1200 0 1 if (pdfmake_buf_append(out, row, row_bytes) != PDFMAKE_OK) {
1220 1 0 if (!in || !out) return PDFMAKE_EINVAL;
0 1 if (!in || !out) return PDFMAKE_EINVAL;
1223 0 1 if (bits_per_comp != 8) return PDFMAKE_EUNSUPPORTED;
1226 0 1 if (in_len % row_bytes != 0) return PDFMAKE_EINVAL;
1232 0 1 if (!row) return PDFMAKE_ENOMEM;
1234 1 1 for (r = 0; r < num_rows; r++) {
1238 1 1 for (c = 0; c < colors; c++) {
1243 5 1 for (i = colors; i < row_bytes; i++) {
1247 0 1 if (pdfmake_buf_append(out, row, row_bytes) != PDFMAKE_OK) {
1268 0 0 if (!name || !out) return PDFMAKE_EINVAL;
0 0 if (!name || !out) return PDFMAKE_EINVAL;
1270 0 0 if (strcmp(name, "FlateDecode") == 0 || strcmp(name, "Fl") == 0) {
0 0 if (strcmp(name, "FlateDecode") == 0 || strcmp(name, "Fl") == 0) {
1276 0 0 if (strcmp(name, "ASCIIHexDecode") == 0 || strcmp(name, "AHx") == 0) {
0 0 if (strcmp(name, "ASCIIHexDecode") == 0 || strcmp(name, "AHx") == 0) {
1280 0 0 if (strcmp(name, "ASCII85Decode") == 0 || strcmp(name, "A85") == 0) {
0 0 if (strcmp(name, "ASCII85Decode") == 0 || strcmp(name, "A85") == 0) {
1284 0 0 if (strcmp(name, "RunLengthDecode") == 0 || strcmp(name, "RL") == 0) {
0 0 if (strcmp(name, "RunLengthDecode") == 0 || strcmp(name, "RL") == 0) {
1298 93 0 if (!name || !out) return PDFMAKE_EINVAL;
0 93 if (!name || !out) return PDFMAKE_EINVAL;
1300 0 93 if (strcmp(name, "FlateDecode") == 0 || strcmp(name, "Fl") == 0) {
0 0 if (strcmp(name, "FlateDecode") == 0 || strcmp(name, "Fl") == 0) {
1306 0 0 if (strcmp(name, "ASCIIHexDecode") == 0 || strcmp(name, "AHx") == 0) {
0 0 if (strcmp(name, "ASCIIHexDecode") == 0 || strcmp(name, "AHx") == 0) {
1310 0 0 if (strcmp(name, "ASCII85Decode") == 0 || strcmp(name, "A85") == 0) {
0 0 if (strcmp(name, "ASCII85Decode") == 0 || strcmp(name, "A85") == 0) {
1314 0 0 if (strcmp(name, "LZWDecode") == 0 || strcmp(name, "LZW") == 0) {
0 0 if (strcmp(name, "LZWDecode") == 0 || strcmp(name, "LZW") == 0) {
1320 0 0 if (strcmp(name, "RunLengthDecode") == 0 || strcmp(name, "RL") == 0) {
0 0 if (strcmp(name, "RunLengthDecode") == 0 || strcmp(name, "RL") == 0) {
1325 0 0 if (strcmp(name, "CCITTFaxDecode") == 0 || strcmp(name, "CCF") == 0) {
0 0 if (strcmp(name, "CCITTFaxDecode") == 0 || strcmp(name, "CCF") == 0) {
1328 0 0 if (strcmp(name, "JBIG2Decode") == 0) {
1331 0 0 if (strcmp(name, "JPXDecode") == 0) {
1351 93 0 if (!arena || !filters || !out) return PDFMAKE_EINVAL;
93 0 if (!arena || !filters || !out) return PDFMAKE_EINVAL;
0 93 if (!arena || !filters || !out) return PDFMAKE_EINVAL;
1354 93 0 if (filters->kind == PDFMAKE_NAME) {
1361 0 0 if (filters->kind != PDFMAKE_ARRAY) return PDFMAKE_EINVAL;
1364 0 0 if (n == 0) {
1369 0 0 if (pdfmake_buf_init(&tmp1) != PDFMAKE_OK) return PDFMAKE_ENOMEM;
1370 0 0 if (pdfmake_buf_init(&tmp2) != PDFMAKE_OK) {
1379 0 0 for (i = n; i > 0; i--) {
1383 0 0 if (!filter || filter->kind != PDFMAKE_NAME) {
0 0 if (!filter || filter->kind != PDFMAKE_NAME) {
1394 0 0 if (params && params->kind == PDFMAKE_ARRAY) {
0 0 if (params && params->kind == PDFMAKE_ARRAY) {
1396 0 0 } else if (params && n == 1) {
0 0 } else if (params && n == 1) {
1403 0 0 if (err != PDFMAKE_OK) {
1412 0 0 current_out = (current_out == &tmp1) ? &tmp2 : &tmp1;
1436 0 0 if (!arena || !filters || !out) return PDFMAKE_EINVAL;
0 0 if (!arena || !filters || !out) return PDFMAKE_EINVAL;
0 0 if (!arena || !filters || !out) return PDFMAKE_EINVAL;
1439 0 0 if (filters->kind == PDFMAKE_NAME) {
1446 0 0 if (filters->kind != PDFMAKE_ARRAY) return PDFMAKE_EINVAL;
1449 0 0 if (n == 0) {
1454 0 0 if (pdfmake_buf_init(&tmp1) != PDFMAKE_OK) return PDFMAKE_ENOMEM;
1455 0 0 if (pdfmake_buf_init(&tmp2) != PDFMAKE_OK) {
1464 0 0 for (i = 0; i < n; i++) {
1468 0 0 if (!filter || filter->kind != PDFMAKE_NAME) {
0 0 if (!filter || filter->kind != PDFMAKE_NAME) {
1479 0 0 if (params && params->kind == PDFMAKE_ARRAY) {
0 0 if (params && params->kind == PDFMAKE_ARRAY) {
1481 0 0 } else if (params && n == 1) {
0 0 } else if (params && n == 1) {
1488 0 0 if (err != PDFMAKE_OK) {
1497 0 0 current_out = (current_out == &tmp1) ? &tmp2 : &tmp1;
1514 556 0 if (c >= '0' && c <= '9') return c - '0';
352 204 if (c >= '0' && c <= '9') return c - '0';
1515 204 0 if (c >= 'A' && c <= 'F') return c - 'A' + 10;
201 3 if (c >= 'A' && c <= 'F') return c - 'A' + 10;
1516 3 0 if (c >= 'a' && c <= 'f') return c - 'a' + 10;
3 0 if (c >= 'a' && c <= 'f') return c - 'a' + 10;
1528 0 8 if (!out) return PDFMAKE_EINVAL;
1529 8 0 if (!in || in_len == 0) return PDFMAKE_OK;
0 8 if (!in || in_len == 0) return PDFMAKE_OK;
1533 567 1 for (i = 0; i < in_len; i++) {
1537 7 560 if (c == '>') break;
1540 558 2 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
558 0 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
556 2 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
556 0 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
0 556 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
1545 0 556 if (val < 0) return PDFMAKE_ECORRUPT; /* Invalid hex digit */
1547 279 277 if (high < 0) {
1551 0 277 if (pdfmake_buf_append_byte(out, byte) != PDFMAKE_OK) {
1559 2 6 if (high >= 0) {
1561 0 2 if (pdfmake_buf_append_byte(out, byte) != PDFMAKE_OK) {
1576 0 3 if (!out) return PDFMAKE_EINVAL;
1578 261 3 for (i = 0; i < in_len; i++) {
1609 0 15 if (!out) return PDFMAKE_EINVAL;
1610 15 0 if (!in || in_len == 0) return PDFMAKE_OK;
1 14 if (!in || in_len == 0) return PDFMAKE_OK;
1615 795 0 for (i = 0; i < in_len; i++) {
1619 14 781 if (c == '~') {
1620 14 0 if (i + 1 < in_len && in[i + 1] == '>') break;
14 0 if (i + 1 < in_len && in[i + 1] == '>') break;
1626 769 12 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
769 0 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
757 12 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
757 0 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
0 757 if (c == ' ' || c == '\t' || c == '\n' || c == '\r' || c == '\f') {
1631 1 756 if (c == 'z') {
1632 0 1 if (group_len != 0) return PDFMAKE_ECORRUPT;
1633 0 1 if (pdfmake_buf_append(out, zeros, 4) != PDFMAKE_OK) {
1640 756 0 if (c < 33 || c > 117) return PDFMAKE_ECORRUPT;
0 756 if (c < 33 || c > 117) return PDFMAKE_ECORRUPT;
1644 145 611 if (group_len == 5) {
1647 725 145 for (j = 0; j < 5; j++) {
1656 0 145 if (pdfmake_buf_append(out, bytes, 4) != PDFMAKE_OK) {
1664 10 4 if (group_len > 1) {
1666 19 10 for (j = group_len; j < 5; j++) {
1671 50 10 for (j = 0; j < 5; j++) {
1681 0 10 if (pdfmake_buf_append(out, bytes, out_bytes) != PDFMAKE_OK) {
1684 0 4 } else if (group_len == 1) {
1700 0 12 if (!out) return PDFMAKE_EINVAL;
1703 142 12 while (i + 4 <= in_len) {
1710 1 141 if (val == 0) {
1712 0 1 if (pdfmake_buf_append_byte(out, 'z') != PDFMAKE_OK) {
1722 0 141 if (pdfmake_buf_append(out, chars, 5) != PDFMAKE_OK) {
1731 9 3 if (remain > 0) {
1733 18 9 for (j = 0; j < remain; j++) {
1744 0 9 if (pdfmake_buf_append(out, chars, remain + 1) != PDFMAKE_OK) {
1786 0 4 if (!out) return PDFMAKE_EINVAL;
1787 4 0 if (!in || in_len == 0) return PDFMAKE_OK;
0 4 if (!in || in_len == 0) return PDFMAKE_OK;
1789 4 0 early_change = params ? params->early_change : 1;
1793 0 4 if (!table) return PDFMAKE_ENOMEM;
1797 0 4 if (!stack) {
1803 1024 4 for (i = 0; i < 256; i++) {
1845 1 20 READ_CODE(code);
180 20 READ_CODE(code);
1847 4 17 if (code == LZW_EOD_CODE) break;
1849 4 13 if (code == LZW_CLEAR_CODE) {
1858 3 10 if (prev_code < 0) {
1859 0 3 if (code >= 256) {
1864 3 3 OUTPUT_STRING(code);
0 3 OUTPUT_STRING(code);
3 3 OUTPUT_STRING(code);
1869 8 2 if (code < next_code) {
1871 14 8 OUTPUT_STRING(code);
0 14 OUTPUT_STRING(code);
14 8 OUTPUT_STRING(code);
1874 6 8 while (table[c].prefix >= 0) c = table[c].prefix;
1876 2 0 } else if (code == next_code) {
1879 0 2 while (table[c].prefix >= 0) c = table[c].prefix;
1882 2 2 OUTPUT_STRING(prev_code);
0 2 OUTPUT_STRING(prev_code);
2 2 OUTPUT_STRING(prev_code);
1883 0 2 if (pdfmake_buf_append_byte(out, first_byte) != PDFMAKE_OK) {
1896 10 0 if (next_code <= LZW_MAX_CODE) {
1903 10 0 if (early_change) {
1905 0 10 if (next_code == (1 << code_bits) && code_bits < 12) {
0 0 if (next_code == (1 << code_bits) && code_bits < 12) {
1910 0 0 if (next_code == (1 << code_bits) + 1 && code_bits < 12) {
0 0 if (next_code == (1 << code_bits) + 1 && code_bits < 12) {
1926 4 0 if (params && params->predictor > 1) {
0 4 if (params && params->predictor > 1) {
1927 0 0 if (pdfmake_buf_init(&decoded_pred) != PDFMAKE_OK) {
1931 0 0 if (params->predictor == 2) {
1935 0 0 } else if (params->predictor >= 10 && params->predictor <= 15) {
0 0 } else if (params->predictor >= 10 && params->predictor <= 15) {
1944 0 0 if (err != PDFMAKE_OK) {
1969 0 13 if (!out) return PDFMAKE_EINVAL;
1970 13 0 if (!in || in_len == 0) return PDFMAKE_OK;
1 12 if (!in || in_len == 0) return PDFMAKE_OK;
1973 33 1 while (i < in_len) {
1976 11 22 if (len_byte == 128) {
1979 14 8 } else if (len_byte <= 127) {
1982 0 14 if (i + count > in_len) return PDFMAKE_ECORRUPT;
1983 0 14 if (pdfmake_buf_append(out, in + i, count) != PDFMAKE_OK) {
1990 0 8 if (i >= in_len) return PDFMAKE_ECORRUPT;
1992 638 8 for (j = 0; j < count; j++) {
1993 0 638 if (pdfmake_buf_append_byte(out, byte) != PDFMAKE_OK) {
2011 0 6 if (!out) return PDFMAKE_EINVAL;
2012 6 0 if (!in || in_len == 0) {
1 5 if (!in || in_len == 0) {
2018 17 5 while (i < in_len) {
2021 516 3 while (i + run_len < in_len && in[i + run_len] == in[i] && run_len < 128) {
505 11 while (i + run_len < in_len && in[i + run_len] == in[i] && run_len < 128) {
502 3 while (i + run_len < in_len && in[i + run_len] == in[i] && run_len < 128) {
2025 6 11 if (run_len >= 3) {
2038 1077 4 while (i < in_len && lit_len < 128) {
1070 7 while (i < in_len && lit_len < 128) {
2040 1063 7 if (i + 2 < in_len && in[i] == in[i+1] && in[i] == in[i+2]) {
0 1063 if (i + 2 < in_len && in[i] == in[i+1] && in[i] == in[i+2]) {
0 0 if (i + 2 < in_len && in[i] == in[i+1] && in[i] == in[i+2]) {
2047 11 0 if (lit_len > 0) {