/src/leptonica/prog/fuzzing/boxfunc5_fuzzer.cc
Line | Count | Source (jump to first uncovered line) |
1 | | #include "leptfuzz.h" |
2 | | |
3 | | extern "C" int |
4 | 25 | LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { |
5 | 25 | if(size<3) return 0; |
6 | | |
7 | 23 | leptSetStdNullHandler(); |
8 | | |
9 | 23 | BOXA *boxa_payload, *boxa1; |
10 | 23 | boxa_payload = boxaReadMem(data, size); |
11 | 23 | if(boxa_payload == NULL) return 0; |
12 | | |
13 | 0 | l_float32 fvarp, fvarm, devw, devh; |
14 | 0 | l_float32 del_evenodd, rms_even, rms_odd, rms_all; |
15 | 0 | l_int32 isame; |
16 | |
|
17 | 0 | boxa1 = boxaReconcileAllByMedian(boxa_payload, |
18 | 0 | L_ADJUST_LEFT_AND_RIGHT, |
19 | 0 | L_ADJUST_TOP_AND_BOT, 50, |
20 | 0 | 0, NULL); |
21 | 0 | boxaDestroy(&boxa1); |
22 | | |
23 | 0 | boxa1 = boxaReconcileSidesByMedian(boxa_payload, L_ADJUST_LEFT, 80, |
24 | 0 | 40, NULL); |
25 | 0 | boxaDestroy(&boxa1); |
26 | |
|
27 | 0 | boxa1 = boxaReconcilePairWidth(boxa_payload, 2, |
28 | 0 | L_ADJUST_CHOOSE_MIN, |
29 | 0 | 0.5, NULL); |
30 | 0 | boxaDestroy(&boxa1); |
31 | |
|
32 | 0 | boxaSizeConsistency(boxa_payload, L_CHECK_HEIGHT, |
33 | 0 | 0.0, 0.0, &fvarp, &fvarm, &isame); |
34 | |
|
35 | 0 | boxaSizeVariation(boxa_payload, L_SELECT_WIDTH, &del_evenodd, |
36 | 0 | &rms_even, &rms_odd, &rms_all); |
37 | |
|
38 | 0 | boxa1 = boxaSmoothSequenceMedian(boxa_payload, 10, |
39 | 0 | L_SUB_ON_LOC_DIFF, |
40 | 0 | 80, 20, 1); |
41 | 0 | boxaDestroy(&boxa1); |
42 | 0 | boxaDestroy(&boxa_payload); |
43 | 0 | return 0; |
44 | 23 | } |