Coverage Report

Created: 2026-06-30 06:29

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/leptonica/prog/fuzzing/pageseg_fuzzer.cc
Line
Count
Source
1
#include "leptfuzz.h"
2
3
extern "C" int
4
LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
5
906
{
6
906
    leptSetStdNullHandler();
7
8
906
    l_int32      score;
9
906
    PIX          *pixs;
10
906
    PIX          *pix1, *pix2, *pix3, *pix4;
11
906
    PIXA         *pixa1, *pixa2;
12
906
    PIXAC        *pixac;
13
906
    BOX          *box;
14
906
    BOXA         *boxa;
15
16
906
    pixs = pixReadMemSpix(data, size);
17
906
    if(pixs==NULL) return 0;
18
19
84
    pixa1 = pixaCreate(0);
20
84
    pixDecideIfTable(pixs, NULL, L_PORTRAIT_MODE, &score, pixa1);
21
84
    pixaDestroy(&pixa1);
22
23
84
    pixa1 = pixaCreate(0);
24
84
    pixGetRegionsBinary(pixs, &pix1, &pix2, &pix3, pixa1);
25
84
    pixDestroy(&pix1);
26
84
    pixDestroy(&pix2);
27
84
    pixDestroy(&pix3);
28
84
    pixaDestroy(&pixa1);
29
30
84
    pixac = pixacompReadMem(data, size);
31
84
    box = pixFindPageForeground(pixs, 170, 70, 30, 0, pixac);
32
84
    boxDestroy(&box);
33
84
    pixacompDestroy(&pixac);
34
35
84
    pixSplitIntoCharacters(pixs, 4, 4, &boxa, &pixa2, &pix4);
36
84
    boxaDestroy(&boxa);
37
84
    pixaDestroy(&pixa2);
38
84
    pixDestroy(&pix4);
39
40
84
    pixDestroy(&pixs);
41
84
    return 0;
42
906
}