Coverage Report

Created: 2026-01-13 06:40

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/leptonica/prog/fuzzing/graphics_fuzzer.cc
Line
Count
Source
1
#include "leptfuzz.h"
2
3
extern "C" int
4
38.4k
LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { 
5
38.4k
    if(size<3) return 0;
6
 
7
38.3k
    leptSetStdNullHandler();
8
9
38.3k
    PIX *pixs_payload = pixReadMemSpix(data, size);
10
38.3k
    if(pixs_payload == NULL) return 0;
11
12
20.8k
    PTA *pta1 = ptaCreate(0);
13
20.8k
    PIX *pix_return1 = pixFillPolygon(pixs_payload, pta1, 2, 2);
14
20.8k
    ptaDestroy(&pta1);
15
20.8k
    pixDestroy(&pix_return1);
16
    
17
20.8k
    PTA  *pta_return1 =pixGeneratePtaBoundary(pixs_payload, 1);
18
20.8k
    ptaDestroy(&pta_return1);
19
 
20
20.8k
    BOX *box1 = boxCreate(150, 130, 1500, 355);
21
20.8k
    pixRenderBox(pixs_payload, box1,  3,  200);
22
20.8k
    boxDestroy(&box1);
23
24
20.8k
    BOXA *boxa1;
25
20.8k
    boxa1 = boxaCreate(0);
26
20.8k
    pixRenderBoxa(pixs_payload, boxa1,  17,  200);
27
20.8k
    boxaDestroy(&boxa1);
28
29
20.8k
    boxa1 = boxaCreate(0);
30
20.8k
    pixRenderBoxaBlend(pixs_payload, boxa1,  17,  200, 1,  25,  0.4,  1);
31
20.8k
    boxaDestroy(&boxa1);
32
33
20.8k
    PIX *pix_return12 = pixRenderContours(pixs_payload, 2, 4, 1);
34
20.8k
    pixDestroy(&pix_return12);
35
    
36
20.8k
    pixRenderGridArb(pixs_payload, 1, 1, 1, 1, 1, 1);
37
 
38
20.8k
    BOX *box2 = boxCreate(150, 130, 1500, 355);
39
20.8k
    pixRenderHashBox(pixs_payload, box2, 2, 1, 1, 0, L_SET_PIXELS);
40
20.8k
    boxDestroy(&box2);
41
 
42
20.8k
    BOX *box3 = boxCreate(150, 130, 1500, 355);
43
20.8k
    pixRenderHashBoxBlend(pixs_payload, box3, 2, 1, L_HORIZONTAL_LINE, 0, 1, 1, 1, 1.0);
44
20.8k
    boxDestroy(&box3);
45
46
20.8k
    BOXA *boxa2;
47
20.8k
    boxa2 = boxaCreate(1);
48
20.8k
    pixRenderHashBoxa(pixs_payload, boxa2, 2, 1, L_HORIZONTAL_LINE, 0, L_SET_PIXELS);
49
20.8k
    boxaDestroy(&boxa2);
50
51
20.8k
    boxa1 = boxaCreate(1);
52
20.8k
    pixRenderHashBoxaArb(pixs_payload, boxa1, 2, 1, L_HORIZONTAL_LINE, 0, 1, 1, 1);
53
20.8k
    boxaDestroy(&boxa1);
54
55
20.8k
    PIX *pixs = pixRead("../test8.jpg");
56
20.8k
    pixRenderHashMaskArb(pixs_payload, pixs, 2, 2, 2, 1, L_HORIZONTAL_LINE, 0, 1, 1, 1);
57
20.8k
    pixDestroy(&pixs);
58
59
20.8k
    pixRenderLineBlend(pixs_payload,  30,  60,  440,  70,  5,  115,  200,  120,  0.3);
60
 
61
20.8k
    PIX *pixs_payload2 = pixCopy(NULL, pixs_payload);
62
20.8k
    NUMA *na2 = numaGammaTRC(1.7, 150, 255);
63
20.8k
    pixRenderPlotFromNumaGen(&pixs_payload2, na2, L_HORIZONTAL_LINE,  3, 1,  80,  1, 1);
64
20.8k
    numaDestroy(&na2);
65
20.8k
    pixDestroy(&pixs_payload2);
66
67
20.8k
    PTA *pta2 = ptaCreate(0);
68
20.8k
    pixRenderPolylineArb(pixs_payload, pta2, 1, 1, 1, 1, 0);
69
20.8k
    ptaDestroy(&pta2);
70
71
20.8k
    PTA *pta3 = ptaCreate(0);
72
20.8k
    pixRenderPolylineBlend(pixs_payload, pta3,  17,  25,  200, 1,  0.5,  1, 1);
73
20.8k
    ptaDestroy(&pta3);
74
75
20.8k
    NUMA *na1 = numaGammaTRC(1.7, 150, 255);
76
20.8k
    pixRenderPlotFromNuma(&pixs_payload, na1, L_HORIZONTAL_LINE,  3, 1,  80);
77
20.8k
    numaDestroy(&na1);
78
79
20.8k
    pixDestroy(&pixs_payload);
80
20.8k
    return 0;
81
38.3k
}