Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Project functions overview

The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.

For further technical details on the meaning of columns in the below table, please see the Glossary .

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzzer details

Fuzzer: hb-set-fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 330 99.3%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 2 0.60%
All colors 332 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
330 1 LLVMFuzzerTestOneInput call site: 00001 hb_set_intersect

Runtime coverage analysis

Covered functions
2
Functions that are reachable but not covered
468
Reachable functions
471
Percentage of reachable functions covered
0.64%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
../../src/harfbuzz/test/fuzzing/hb-set-fuzzer.cc 2
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 1
../../src/harfbuzz/src/hb-set.cc 8
../../src/harfbuzz/src/hb-object.hh 19
../../src/harfbuzz/src/hb-common.cc 4
../../src/harfbuzz/src/failing-alloc.c 5
../../src/harfbuzz/src/hb-set.hh 11
../../src/harfbuzz/src/hb-atomic.hh 18
../../src/harfbuzz/src/hb-bit-set-invertible.hh 14
../../src/harfbuzz/src/hb-bit-set.hh 28
../../src/harfbuzz/src/hb-vector.hh 55
../../src/harfbuzz/src/hb-debug.hh 1
../../src/harfbuzz/src/hb-null.hh 19
../../src/harfbuzz/src/hb-array.hh 11
../../src/harfbuzz/src/hb-algs.hh 21
../../src/harfbuzz/src/hb-bit-page.hh 17
../../src/harfbuzz/src/hb-iter.hh 12
../../src/harfbuzz/src/hb-meta.hh 1
../../src/harfbuzz/src/hb-mutex.hh 3

Fuzzer: hb-repacker-fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 2239 42.8%
gold [1:9] 27 0.51%
yellow [10:29] 52 0.99%
greenyellow [30:49] 9 0.17%
lawngreen 50+ 2902 55.4%
All colors 5229 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
102 3773 hb_iter_t , OT::Layout::Common::Coverage::iter_t>, hb_set_t&, $_6 const&, (void*)0>, $_7 const&, (hb_function_sortedness_t)1, (void*)0>, unsigned int>::operator++() & call site: 03773 _ZN2OT6Layout6Common17CoverageFormat2_4INS0_11MediumTypesEE9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tI14hb_iota_iter_tIjjENS1_8Coverage6iter_tEER8hb_set_tRK3$_6LPv0EERK3$_7L24hb_function_sortedness_t1ELSJ_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSR_18is_sorted_iteratorEvE4typeELSJ_0EEEbP22hb_serialize_context_tSR_
96 4009 hb_array_t ::qsort(int (*)(void const*, void const*)) call site: 04009 _ZN2OT6Layout6Common8Coverage9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tINS2_6iter_tE15hb_range_iter_tIjjEEZN5graph8Coverage15filter_coverageERNSB_24gsubgpos_graph_context_tEjjjEUl9hb_pair_tIjjEE_RK4$_19LPv0EERK3$_6L24hb_function_sortedness_t1ELSL_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrST_18is_sorted_iteratorEvE4typeELSL_0EEEbP22hb_serialize_context_tST_
64 3148 CrapHelper >::get_crap() call site: 03148 _ZN2OT17ClassDefFormat1_3INS_6Layout11MediumTypesEE9serializeI16hb_filter_iter_tI13hb_map_iter_tIS5_IS6_INS1_6Common8Coverage6iter_tEZNK5graph14PairPosFormat211clone_rangeERNSB_15split_context_tEjjEUljE_L24hb_function_sortedness_t1ELPv0EEZNKSB_11clone_rangeESD_jjEUljE0_RK3$_7LSG_0EEZNKSB_11clone_rangeESD_jjEUl9hb_pair_tIjjEE_LSF_1ELSG_0EESL_RK4$_19LSG_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSW_18is_sorted_iteratorEvE4typeELSG_0EEEbP22hb_serialize_context_tSW_
63 1697 hb_serialize_context_t::check_success(bool, hb_serialize_error_t) call site: 01697 _ZN2OT6Layout6Common17CoverageFormat2_4INS0_10SmallTypesEE9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tINS1_8Coverage6iter_tE15hb_range_iter_tIjjEEZN5graph8Coverage14clone_coverageERNSE_24gsubgpos_graph_context_tEjjjjjEUl9hb_pair_tIjjEE_RK4$_19LPv0EERK3$_6L24hb_function_sortedness_t1ELSO_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSW_18is_sorted_iteratorEvE4typeELSO_0EEEbP22hb_serialize_context_tSW_
61 3213 OT::ArrayOf , OT::NumType >::operator[](int) call site: 03213 _ZN2OT17ClassDefFormat2_4INS_6Layout11MediumTypesEE9serializeI16hb_filter_iter_tI13hb_map_iter_tIS5_IS6_INS1_6Common8Coverage6iter_tEZNK5graph14PairPosFormat211clone_rangeERNSB_15split_context_tEjjEUljE_L24hb_function_sortedness_t1ELPv0EEZNKSB_11clone_rangeESD_jjEUljE0_RK3$_7LSG_0EEZNKSB_11clone_rangeESD_jjEUl9hb_pair_tIjjEE_LSF_1ELSG_0EESL_RK4$_19LSG_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSW_18is_sorted_iteratorEvE4typeELSG_0EEEbP22hb_serialize_context_tSW_
55 4184 graph::graph_t::vertex_t::is_shared() const call site: 04184 _ZN2OT6Layout6Common8Coverage9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tINS2_6iter_tE15hb_range_iter_tIjjEEZN5graph20LigatureSubstFormat16shrinkERNSB_24gsubgpos_graph_context_tEjj11hb_vector_tIjLb0EEjEUl9hb_pair_tIjjEE_RK4$_19LPv0EERK3$_6L24hb_function_sortedness_t1ELSN_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSV_18is_sorted_iteratorEvE4typeELSN_0EEEbP22hb_serialize_context_tSV_
50 4133 hb_iter_t >, graph::Coverage::filter_coverage(graph::gsubgpos_graph_context_t&, unsigned int, unsigned int, unsigned int)::{lambda(hb_pair_t )#1}, $_19 const&, (void*)0>, $_6 const&, (hb_function_sortedness_t)1, ($_19 const&)0>, unsigned int>::operator++() & call site: 04133 _ZN2OT6Layout6Common17CoverageFormat2_4INS0_11MediumTypesEE9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tINS1_8Coverage6iter_tE15hb_range_iter_tIjjEEZN5graph8Coverage15filter_coverageERNSE_24gsubgpos_graph_context_tEjjjEUl9hb_pair_tIjjEE_RK4$_19LPv0EERK3$_6L24hb_function_sortedness_t1ELSO_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSW_18is_sorted_iteratorEvE4typeELSO_0EEEbP22hb_serialize_context_tSW_
48 2178 hb_filter_iter_t ::item_t>, bool (hb_hashmap_t ::item_t::*)() const, $_19 const&, (void*)0>::__next__() call site: 02178 _ZN2OT6Layout6Common8Coverage9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tINS2_6iter_tE15hb_range_iter_tIjjEEZN5graph14PairPosFormat16shrinkERNSB_24gsubgpos_graph_context_tEjjEUl9hb_pair_tIjjEE_RK4$_19LPv0EERK3$_6L24hb_function_sortedness_t1ELSL_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrST_18is_sorted_iteratorEvE4typeELSL_0EEEbP22hb_serialize_context_tST_
47 3008 hb_iter_t , graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(unsigned int)#2}, $_7 const&, (hb_function_sortedness_t)0>, graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(hb_pair_t )#1}, (graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(unsigned int)#1})1, (hb_function_sortedness_t)0>, hb_filter_iter_t , graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(unsigned int)#2}, $_7 const&, (hb_function_sortedness_t)0> >::operator++() & call site: 03008 _ZN2OT8ClassDef9serializeI13hb_map_iter_tI16hb_filter_iter_tIS2_INS_6Layout6Common8Coverage6iter_tEZNK5graph14PairPosFormat211clone_rangeERNS9_15split_context_tEjjEUljE_L24hb_function_sortedness_t1ELPv0EEZNKS9_11clone_rangeESB_jjEUljE0_RK3$_7LSE_0EEZNKS9_11clone_rangeESB_jjEUl9hb_pair_tIjjEE_LSD_1ELSE_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSQ_18is_sorted_iteratorEvE4typeELSE_0EEEbP22hb_serialize_context_tSQ_
34 1846 hb_serialize_context_t::pop_pack(bool) call site: 01846 _ZN12hb_hashmap_tIPKN22hb_serialize_context_t8object_tEjLb0EE6item_t13default_valueILb0ETnPN12hb_enable_ifIXeqT_Lb0EEvE4typeELPv0EEERKjv
34 2831 graph::PairPosFormat2::split_subtables(graph::gsubgpos_graph_context_t&, unsigned int) call site: 02831
33 3378 hb_iter_t , graph::PairPosFormat2::shrink(graph::PairPosFormat2::split_context_t&, unsigned int)::{lambda(unsigned int)#2}, $_7 const&, (hb_function_sortedness_t)0>, $_6 const&, (graph::PairPosFormat2::shrink(graph::PairPosFormat2::split_context_t&, unsigned int)::{lambda(unsigned int)#1})1, (hb_function_sortedness_t)0>, unsigned int>::operator++() & call site: 03378 _ZN2OT8ClassDef9serializeI16hb_filter_iter_tI13hb_map_iter_tINS_6Layout6Common8Coverage6iter_tEZN5graph14PairPosFormat26shrinkERNS9_15split_context_tEjEUljE_L24hb_function_sortedness_t1ELPv0EEZNS9_6shrinkESB_jEUljE0_RK3$_7LSE_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSM_18is_sorted_iteratorEvE4typeELSE_0EEEbP22hb_serialize_context_tSM_

Runtime coverage analysis

Covered functions
1748
Functions that are reachable but not covered
1569
Reachable functions
5373
Percentage of reachable functions covered
70.8%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
../../src/harfbuzz/test/fuzzing/hb-repacker-fuzzer.cc 6
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 1
../../src/harfbuzz/src/hb-subset-serialize.cc 1
../../src/harfbuzz/src/hb-vector.hh 322
../../src/harfbuzz/src/hb-algs.hh 246
../../src/harfbuzz/src/hb-common.cc 4
../../src/harfbuzz/src/failing-alloc.c 5
../../src/harfbuzz/src/hb-null.hh 127
../../src/harfbuzz/src/hb-repacker.hh 9
../../src/harfbuzz/src/graph/graph.hh 99
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-vector.hh 2
../../src/harfbuzz/src/hb-serialize.hh 110
../../src/harfbuzz/src/hb-map.hh 176
../../src/harfbuzz/src/hb-object.hh 31
../../src/harfbuzz/src/hb-atomic.hh 20
../../src/harfbuzz/src/hb-mutex.hh 3
../../src/harfbuzz/src/hb-set.hh 34
../../src/harfbuzz/src/hb-bit-set-invertible.hh 33
../../src/harfbuzz/src/hb-bit-set.hh 44
../../src/harfbuzz/src/hb-debug.hh 4
../../src/harfbuzz/src/hb-bit-page.hh 34
../../src/harfbuzz/src/hb-array.hh 121
../../src/harfbuzz/src/hb-iter.hh 946
../../src/harfbuzz/src/hb-meta.hh 116
../../src/harfbuzz/src/graph/../hb-priority-queue.hh 9
../../src/harfbuzz/src/graph/serialize.hh 13
../../src/harfbuzz/src/graph/gsubgpos-context.cc 2
../../src/harfbuzz/src/graph/../hb-map.hh 4
../../src/harfbuzz/src/graph/../hb-object.hh 2
../../src/harfbuzz/src/graph/gsubgpos-graph.hh 29
../../src/harfbuzz/src/graph/../hb-atomic.hh 2
../../src/harfbuzz/src/graph/../hb-ot-layout-gsubgpos.hh 5
../../src/harfbuzz/src/hb-open-type.hh 90
../../src/harfbuzz/src/OT/Layout/GSUB/../../../hb-ot-layout-common.hh 1
../../src/harfbuzz/src/hb-machinery.hh 4
../../src/harfbuzz/src/graph/pairpos-graph.hh 32
../../src/harfbuzz/src/OT/Layout/GPOS/ValueFormat.hh 2
../../src/harfbuzz/src/graph/split-helpers.hh 4
../../src/harfbuzz/src/graph/gsubgpos-context.hh 2
../../src/harfbuzz/src/graph/coverage-graph.hh 17
../../src/harfbuzz/src/OT/Layout/Common/Coverage.hh 6
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat1.hh 8
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh 8
../../src/harfbuzz/src/OT/Layout/Common/RangeRecord.hh 4
../../src/harfbuzz/src/hb-free-pool.hh 5
../../src/harfbuzz/src/graph/../OT/Layout/Common/Coverage.hh 16
../../src/harfbuzz/src/graph/../OT/Layout/Common/CoverageFormat1.hh 18
../../src/harfbuzz/src/graph/../OT/Layout/Common/CoverageFormat2.hh 18
../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/RangeRecord.hh 2
../../src/harfbuzz/src/graph/classdef-graph.hh 13
../../src/harfbuzz/src/hb-ot-layout-common.hh 5
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/ValueFormat.hh 1
../../src/harfbuzz/src/graph/../hb-ot-layout-common.hh 12
../../src/harfbuzz/src/graph/markbasepos-graph.hh 21
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkRecord.hh 1
../../src/harfbuzz/src/graph/ligature-graph.hh 21
../../src/harfbuzz/src/hb-blob.cc 7
../../src/harfbuzz/src/hb-blob.hh 3

Fuzzer: hb-draw-fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1748 28.0%
gold [1:9] 119 1.90%
yellow [10:29] 48 0.77%
greenyellow [30:49] 20 0.32%
lawngreen 50+ 4298 68.9%
All colors 6233 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
40 423 hb_ot_face_t::init0(hb_face_t*) call site: 00423
35 1402 hb_lazy_loader_t ::get_unconst() const call site: 01402 hypotf
35 4475 OT::Layout::GPOS_impl::ValueFormat::sanitize_value(hb_sanitize_context_t*, OT::Layout::GPOS_impl::ValueBase const*, OT::NumType const*) const call site: 04475 _ZN21hb_sanitize_context_t8dispatchIN2OT6DeviceEJEEEDTcl9_dispatchfp_cv11hb_priorityILj16EE_Espclsr3stdE7forwardIT0_Efp0_EEERKT_DpOS5_
32 5040 hb_array_t , void, true> const>::sub_array(unsigned int, unsigned int*) const call site: 05040 _ZorI13hb_map_iter_tIS0_I10hb_array_tIKN2OT8OffsetToINS2_10CaretValueENS2_7NumTypeILb1EtLj2EEEvLb1EEEE12hb_partial_tILj2EPK4$_40PKNS2_8LigGlyphEEL24hb_function_sortedness_t0ELPv0EEZNKSE_14get_lig_caretsEP9hb_font_t14hb_direction_tjRKNS2_18ItemVariationStoreEjPjPiEUlRKS4_E_LSI_0ELSJ_0EE9hb_sink_tIS1_IiEETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NS11_6item_tEEE5valueEvE4typeELSJ_0EEDTclclsr3stdE7forwardIT0_Efp0_Eclsr3stdE7forwardIS11_Efp_EEEOS11_OS16_
25 1345 CrapHelper ::get_crap() call site: 01345 hb_draw_funcs_set_line_to_func
25 5717 hb_atomic_t ::operator hb_face_t::plan_node_t* () const call site: 05717 hb_shape_plan_destroy
18 30 void hb_object_trace (hb_blob_t const*, char const*) call site: 00030 hb_malloc
18 6126 hb_lazy_loader_t , hb_face_t, 30u, AAT::morx_accelerator_t>::do_destroy(AAT::morx_accelerator_t*) call site: 06126 hb_free
15 1461 hb_draw_funcs_t::start_path(void*, hb_draw_state_t&) call site: 01461
15 2114 hb_bit_page_t::elt(unsigned int) call site: 02114
15 4643 OT::Layout::GPOS_impl::CursivePosFormat1::sanitize(hb_sanitize_context_t*) const call site: 04643 _ZN21hb_sanitize_context_t8dispatchIN2OT6Layout9GPOS_impl15EntryExitRecordEJPKNS3_17CursivePosFormat1EEEEDTcl9_dispatchfp_cv11hb_priorityILj16EE_Espclsr3stdE7forwardIT0_Efp0_EEERKT_DpOSA_
15 5483 hb_iter_t , OT::MathGlyphVariantRecord const&>::_end() const call site: 05483

Runtime coverage analysis

Covered functions
5858
Functions that are reachable but not covered
1010
Reachable functions
7228
Percentage of reachable functions covered
86.03%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
../../src/harfbuzz/test/fuzzing/hb-draw-fuzzer.cc 7
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 1
../../src/harfbuzz/src/hb-blob.cc 11
../../src/harfbuzz/src/hb-null.hh 277
../../src/harfbuzz/src/hb-object.hh 70
../../src/harfbuzz/src/hb-common.cc 4
../../src/harfbuzz/src/failing-alloc.c 5
../../src/harfbuzz/src/hb-blob.hh 56
../../src/harfbuzz/src/hb-atomic.hh 149
../../src/harfbuzz/src/hb-debug.hh 2
../../src/harfbuzz/src/hb-algs.hh 91
../../src/harfbuzz/src/hb-vector.hh 263
../../src/harfbuzz/src/hb-mutex.hh 3
../../src/harfbuzz/src/hb-face.cc 15
../../src/harfbuzz/src/hb-sanitize.hh 380
../../src/harfbuzz/src/hb-dispatch.hh 1
../../src/harfbuzz/src/hb-open-file.hh 24
../../src/harfbuzz/src/hb-open-type.hh 348
../../src/harfbuzz/src/hb-machinery.hh 597
../../src/harfbuzz/src/hb-face.hh 5
../../src/harfbuzz/src/hb-shaper.hh 6
../../src/harfbuzz/src/hb-shaper-list.hh 12
../../src/harfbuzz/src/hb-ot-face.hh 1
../../src/harfbuzz/src/hb-ot-face.cc 2
../../src/harfbuzz/src/hb-array.hh 163
../../src/harfbuzz/src/hb-iter.hh 226
../../src/harfbuzz/src/hb-meta.hh 19
../../src/harfbuzz/src/hb-font.cc 23
../../src/harfbuzz/src/hb-font.hh 33
../../src/harfbuzz/src/hb-static.cc 4
../../src/harfbuzz/src/OT/glyf/loca.hh 1
../../src/harfbuzz/src/OT/glyf/../../hb-ot-maxp-table.hh 4
../../src/harfbuzz/src/OT/glyf/../../hb-ot-head-table.hh 2
../../src/harfbuzz/src/hb-ot-var-fvar-table.hh 10
../../src/harfbuzz/src/hb-ot-var.cc 3
../../src/harfbuzz/src/hb-ot-var-avar-table.hh 4
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-open-type.hh 84
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-sanitize.hh 154
../../src/harfbuzz/src/OT/Color/COLR/../../../hb-ot-layout-common.hh 12
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-machinery.hh 92
../../src/harfbuzz/src/hb-ot-layout-common.hh 64
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-vector.hh 2
../../src/harfbuzz/src/hb-ot-shape.cc 3
../../src/harfbuzz/src/hb-fallback-shape.cc 2
../../src/harfbuzz/src/hb-draw.cc 18
../../src/harfbuzz/src/hb-draw.hh 8
../../src/harfbuzz/src/hb-set.cc 3
../../src/harfbuzz/src/hb-set.hh 8
../../src/harfbuzz/src/hb-bit-set-invertible.hh 6
../../src/harfbuzz/src/hb-bit-set.hh 19
../../src/harfbuzz/src/hb-outline.hh 4
../../src/harfbuzz/src/hb-outline.cc 13
../../src/harfbuzz/src/hb-paint-extents.hh 11
../../src/harfbuzz/src/hb-geometry.hh 12
../../src/harfbuzz/src/hb-paint-extents.cc 15
../../src/harfbuzz/src/hb-paint.cc 20
../../src/harfbuzz/src/hb-paint.hh 4
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-geometry.hh 4
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-algs.hh 10
../../src/harfbuzz/src/hb-ot-cmap-table.hh 38
../../src/harfbuzz/src/hb-cache.hh 4
../../src/harfbuzz/src/hb-ot-os2-table.hh 5
../../src/harfbuzz/src/hb-ot-shaper-arabic-pua.hh 4
../../src/harfbuzz/src/hb-bit-page.hh 13
../../src/harfbuzz/src/hb-ot-color.cc 7
../../src/harfbuzz/src/OT/Color/COLR/../CPAL/CPAL.hh 11
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-blob.hh 37
../../src/harfbuzz/src/OT/Color/COLR/COLR.hh 72
../../src/harfbuzz/src/OT/Color/COLR/../../../hb-paint-bounded.hh 1
../../src/harfbuzz/src/OT/Color/svg/svg.hh 12
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-map.hh 1
../../src/harfbuzz/src/OT/Color/sbix/sbix.hh 12
../../src/harfbuzz/src/OT/Color/CBDT/CBDT.hh 23
../../src/harfbuzz/src/hb-ot-layout.cc 4
../../src/harfbuzz/src/OT/Layout/GDEF/GDEF.hh 29
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat1.hh 6
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh 6
../../src/harfbuzz/src/OT/Layout/GSUB/GSUB.hh 3
../../src/harfbuzz/src/OT/Layout/GPOS/../../../hb-ot-layout-gsubgpos.hh 44
../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookup.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookupSubTable.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubst.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat1.hh 2
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-open-type.hh 10
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-null.hh 4
../../src/harfbuzz/src/OT/Layout/Common/Coverage.hh 2
../../src/harfbuzz/src/OT/Layout/Common/RangeRecord.hh 4
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat2.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubst.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubstFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/Sequence.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubst.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubstFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSet.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubst.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubstFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSet.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/Ligature.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubst.hh 1
../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubstFormat1.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/GPOS.hh 3
../../src/harfbuzz/src/OT/Layout/GPOS/PosLookup.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/PosLookupSubTable.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePos.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/ValueFormat.hh 8
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat2.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/PairPos.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/PairSet.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat2.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/CursivePos.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/CursivePosFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/Anchor.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat1.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat2.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat3.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePos.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePosFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkArray.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/MarkRecord.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorMatrix.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPos.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPosFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPos.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPosFormat1.hh 2
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-machinery.hh 1
../../src/harfbuzz/src/hb-set-digest.hh 9
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-array.hh 22
../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/Coverage.hh 1
../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/CoverageFormat1.hh 2
../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/CoverageFormat2.hh 2
../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/RangeRecord.hh 4
../../src/harfbuzz/src/hb-ot-math.cc 6
../../src/harfbuzz/src/hb-ot-math-table.hh 35
../../src/harfbuzz/src/hb-shape-plan.cc 1
../../src/harfbuzz/src/hb-shape-plan.hh 2
../../src/harfbuzz/src/hb-ot-shape.hh 1
../../src/harfbuzz/src/hb-ot-map.hh 2
../../src/harfbuzz/src/hb-aat-map.hh 1
../../src/harfbuzz/src/OT/glyf/../../hb-ot-hmtx-table.hh 4
../../src/harfbuzz/src/hb-ot-post-table.hh 2
../../src/harfbuzz/src/OT/name/name.hh 2
../../src/harfbuzz/src/hb-ot-meta-table.hh 2
../../src/harfbuzz/src/OT/glyf/glyf.hh 1
../../src/harfbuzz/src/OT/glyf/../../hb-ot-var-gvar-table.hh 5
../../src/harfbuzz/src/hb-subset-plan.hh 1
../../src/harfbuzz/src/hb-ot-cff1-table.hh 8
../../src/harfbuzz/src/hb-cff-interp-dict-common.hh 7
../../src/harfbuzz/src/hb-cff-interp-common.hh 5
../../src/harfbuzz/src/hb-ot-cff2-table.hh 8
../../src/harfbuzz/src/OT/Var/VARC/VARC.hh 3
../../src/harfbuzz/src/hb-ot-kern-table.hh 2
../../src/harfbuzz/src/hb-aat-layout-common.hh 1
../../src/harfbuzz/src/hb-aat-layout-kerx-table.hh 4
../../src/harfbuzz/src/hb-aat-layout-morx-table.hh 6

Fuzzer: hb-shape-fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 3090 20.1%
gold [1:9] 273 1.78%
yellow [10:29] 226 1.47%
greenyellow [30:49] 129 0.84%
lawngreen 50+ 11583 75.7%
All colors 15301 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
115 3428 hb_ot_tags_from_complex_language(char const*, char const*, unsigned int*, unsigned int*) call site: 03428 strncmp
114 14460 hb_ot_metrics_get_variation call site: 14460 hb_ot_metrics_get_variation
42 14633 hb_lazy_loader_t , hb_face_t, 7u, OT::post_accelerator_t>::get() const call site: 14633 hb_ot_metrics_get_variation
40 423 hb_ot_face_t::init0(hb_face_t*) call site: 00423
40 11324 hb_buffer_t::verify(hb_buffer_t*, hb_font_t*, hb_feature_t const*, unsigned int, char const* const*) call site: 11324 hb_shape_full
34 10979 hb_lazy_loader_t ::get_unconst() const call site: 10979 hypotf
31 10940 CrapHelper ::get_crap() call site: 10940 hb_draw_funcs_set_line_to_func
28 13477 OT::OffsetTo , void, true>::operator()(void const*) const call site: 13477 _ZNK4$_20clIRZNK2OT8LigGlyph14get_lig_caretsEP9hb_font_t14hb_direction_tjRKNS1_18ItemVariationStoreEjPjPiEUlRKNS1_10CaretValueEE_SD_EEDTcl4implclsr3stdE7forwardIT_Efp_Eclsr3stdE7forwardIT0_Efp0_Ecv11hb_priorityILj16EE_EEEOSG_OSH_
26 2505 OT::Device::sanitize(hb_sanitize_context_t*) const call site: 02505 _ZN21hb_sanitize_context_t8dispatchIN2OT6DeviceEJEEEDTcl9_dispatchfp_cv11hb_priorityILj16EE_Espclsr3stdE7forwardIT0_Efp0_EEERKT_DpOS5_
25 14433 NullHelper ::get_null() call site: 14433 hb_ot_metrics_get_variation
23 13415 hb_iter_t , void, true> const>, OT::OffsetTo , void, true> const&>::operator+() const call site: 13415 _ZorI13hb_map_iter_tIS0_I10hb_array_tIKN2OT8OffsetToINS2_10CaretValueENS2_7NumTypeILb1EtLj2EEEvLb1EEEE12hb_partial_tILj2EPK4$_40PKNS2_8LigGlyphEEL24hb_function_sortedness_t0ELPv0EEZNKSE_14get_lig_caretsEP9hb_font_t14hb_direction_tjRKNS2_18ItemVariationStoreEjPjPiEUlRKS4_E_LSI_0ELSJ_0EE9hb_sink_tIS1_IiEETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NS11_6item_tEEE5valueEvE4typeELSJ_0EEDTclclsr3stdE7forwardIT0_Efp0_Eclsr3stdE7forwardIS11_Efp_EEEOS11_OS16_
22 13354 OT::BASE::get_baseline(hb_font_t*, unsigned int, hb_direction_t, unsigned int, unsigned int, int*) const call site: 13354 _ZN2OTplIPKNS_4BASEETnPN12hb_enable_ifIXsr3std14is_convertibleIKT_PKvEE5valueEvE4typeELPv0EEERKNS_18ItemVariationStoreERS6_RKNS_8OffsetToISD_NS_7NumTypeILb1EjLj4EEEvLb1EEE

Runtime coverage analysis

Covered functions
11801
Functions that are reachable but not covered
1391
Reachable functions
16432
Percentage of reachable functions covered
91.53%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
../../src/harfbuzz/test/fuzzing/hb-shape-fuzzer.cc 1
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 1
../../src/harfbuzz/src/hb-blob.cc 11
../../src/harfbuzz/src/hb-null.hh 609
../../src/harfbuzz/src/hb-object.hh 97
../../src/harfbuzz/src/hb-common.cc 16
../../src/harfbuzz/src/failing-alloc.c 5
../../src/harfbuzz/src/hb-blob.hh 108
../../src/harfbuzz/src/hb-atomic.hh 188
../../src/harfbuzz/src/hb-debug.hh 5
../../src/harfbuzz/src/hb-algs.hh 422
../../src/harfbuzz/src/hb-vector.hh 483
../../src/harfbuzz/src/hb-mutex.hh 3
../../src/harfbuzz/src/hb-face.cc 17
../../src/harfbuzz/src/hb-sanitize.hh 611
../../src/harfbuzz/src/hb-dispatch.hh 24
../../src/harfbuzz/src/hb-open-file.hh 24
../../src/harfbuzz/src/hb-open-type.hh 922
../../src/harfbuzz/src/hb-machinery.hh 919
../../src/harfbuzz/src/hb-face.hh 5
../../src/harfbuzz/src/hb-shaper.hh 6
../../src/harfbuzz/src/hb-shaper-list.hh 16
../../src/harfbuzz/src/hb-ot-face.hh 1
../../src/harfbuzz/src/hb-ot-face.cc 2
../../src/harfbuzz/src/hb-array.hh 417
../../src/harfbuzz/src/hb-iter.hh 860
../../src/harfbuzz/src/hb-meta.hh 133
../../src/harfbuzz/src/hb-font.cc 28
../../src/harfbuzz/src/hb-font.hh 57
../../src/harfbuzz/src/hb-static.cc 4
../../src/harfbuzz/src/OT/glyf/loca.hh 1
../../src/harfbuzz/src/OT/glyf/../../hb-ot-maxp-table.hh 4
../../src/harfbuzz/src/OT/glyf/../../hb-ot-head-table.hh 2
../../src/harfbuzz/src/hb-ot-var-fvar-table.hh 14
../../src/harfbuzz/src/hb-ot-var.cc 6
../../src/harfbuzz/src/hb-ot-var-avar-table.hh 4
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-open-type.hh 69
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-sanitize.hh 136
../../src/harfbuzz/src/OT/Color/COLR/../../../hb-ot-layout-common.hh 5
../../src/harfbuzz/src/hb-ot-layout-common.hh 126
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-vector.hh 2
../../src/harfbuzz/src/hb-ot-shape.cc 39
../../src/harfbuzz/src/hb-fallback-shape.cc 5
../../src/harfbuzz/src/hb-buffer.cc 44
../../src/harfbuzz/src/hb-buffer.hh 53
../../src/harfbuzz/src/hb-set-digest.hh 15
../../src/harfbuzz/src/hb-unicode.cc 13
../../src/harfbuzz/src/hb-ucd.cc 13
../../src/harfbuzz/src/hb-unicode.hh 11
../../src/harfbuzz/src/hb-ucd-table.hh 6
../../src/harfbuzz/src/hb-utf.hh 6
../../src/harfbuzz/src/hb-shape.cc 2
../../src/harfbuzz/src/hb-shape-plan.cc 10
../../src/harfbuzz/src/hb-ot-shape.hh 5
../../src/harfbuzz/src/hb-ot-layout.cc 42
../../src/harfbuzz/src/OT/Layout/GSUB/GSUB.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/../../../hb-ot-layout-gsubgpos.hh 517
../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookup.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookupSubTable.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubst.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat1.hh 8
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat1.hh 8
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh 8
../../src/harfbuzz/src/OT/Layout/Common/Coverage.hh 5
../../src/harfbuzz/src/OT/Layout/Common/RangeRecord.hh 8
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat2.hh 6
../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubst.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubstFormat1.hh 6
../../src/harfbuzz/src/OT/Layout/GSUB/Sequence.hh 4
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubst.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubstFormat1.hh 6
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSet.hh 4
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubst.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubstFormat1.hh 10
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSet.hh 8
../../src/harfbuzz/src/OT/Layout/GSUB/Ligature.hh 6
../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubst.hh 2
../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubstFormat1.hh 3
../../src/harfbuzz/src/OT/Layout/GPOS/GPOS.hh 8
../../src/harfbuzz/src/OT/Layout/GPOS/PosLookup.hh 3
../../src/harfbuzz/src/OT/Layout/GPOS/PosLookupSubTable.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePos.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh 3
../../src/harfbuzz/src/OT/Layout/GPOS/ValueFormat.hh 11
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat2.hh 3
../../src/harfbuzz/src/OT/Layout/GPOS/PairPos.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat1.hh 8
../../src/harfbuzz/src/OT/Layout/GPOS/PairSet.hh 6
../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat2.hh 8
../../src/harfbuzz/src/OT/Layout/GPOS/CursivePos.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/CursivePosFormat1.hh 5
../../src/harfbuzz/src/OT/Layout/GPOS/Anchor.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat2.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat3.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePos.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePosFormat1.hh 8
../../src/harfbuzz/src/OT/Layout/GPOS/MarkArray.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkRecord.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorMatrix.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPos.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPosFormat1.hh 6
../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPos.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPosFormat1.hh 6
../../src/harfbuzz/src/OT/Layout/GDEF/GDEF.hh 40
../../src/harfbuzz/src/hb-cache.hh 15
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-open-type.hh 6
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-null.hh 2
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-machinery.hh 1
../../src/harfbuzz/src/hb-shaper.cc 5
../../src/harfbuzz/src/hb-shape-plan.hh 3
../../src/harfbuzz/src/hb-ot-map.hh 21
../../src/harfbuzz/src/hb-aat-map.hh 7
../../src/harfbuzz/src/hb-ot-map.cc 6
../../src/harfbuzz/src/hb-ot-tag.cc 9
../../src/harfbuzz/src/hb-ot-tag-table.hh 1
../../src/harfbuzz/src/hb-aat-layout.cc 18
../../src/harfbuzz/src/hb-aat-layout-morx-table.hh 149
../../src/harfbuzz/src/hb-aat-layout-common.hh 254
../../src/harfbuzz/src/hb-bit-set.hh 34
../../src/harfbuzz/src/hb-ot-shaper.hh 1
../../src/harfbuzz/src/hb-map.hh 20
../../src/harfbuzz/src/hb-aat-map.cc 2
../../src/harfbuzz/src/hb-aat-ltag-table.hh 3
../../src/harfbuzz/src/hb-aat-layout-kerx-table.hh 118
../../src/harfbuzz/src/hb-bit-page.hh 20
../../src/harfbuzz/src/hb-ot-kern-table.hh 41
../../src/harfbuzz/src/hb-aat-layout-trak-table.hh 11
../../src/harfbuzz/src/hb-ot-stat-table.hh 7
../../src/harfbuzz/src/hb-ot-layout.hh 49
../../src/harfbuzz/src/hb-unicode-emoji-table.hh 3
../../src/harfbuzz/src/hb-ot-shape-normalize.cc 10
../../src/harfbuzz/src/hb-ot-shape-normalize.hh 1
../../src/harfbuzz/src/hb-ot-shape-fallback.cc 11
../../src/harfbuzz/src/hb-aat-layout-feat-table.hh 17
../../src/harfbuzz/src/hb-aat-layout.hh 1
../../src/harfbuzz/src/hb-ot-layout-gsub-table.hh 2
../../src/harfbuzz/src/hb-ot-layout-gpos-table.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/PairValueRecord.hh 2
../../src/harfbuzz/src/hb-aat-layout-ankr-table.hh 2
../../src/harfbuzz/src/hb-kern.hh 20
../../src/harfbuzz/src/hb-paint-extents.hh 11
../../src/harfbuzz/src/hb-geometry.hh 12
../../src/harfbuzz/src/hb-paint-extents.cc 15
../../src/harfbuzz/src/hb-paint.cc 20
../../src/harfbuzz/src/hb-paint.hh 4
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-geometry.hh 4
../../src/harfbuzz/src/hb-draw.cc 18
../../src/harfbuzz/src/hb-draw.hh 8
../../src/harfbuzz/src/hb-outline.hh 4
../../src/harfbuzz/src/hb-outline.cc 13
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-algs.hh 2
../../src/harfbuzz/src/hb-buffer-verify.cc 5
../../src/harfbuzz/src/hb-buffer-serialize.cc 3
../../src/harfbuzz/test/fuzzing/../api/test-ot-face.c 1
../../src/harfbuzz/src/hb-set.cc 4
../../src/harfbuzz/src/hb-set.hh 10
../../src/harfbuzz/src/hb-bit-set-invertible.hh 8
../../src/harfbuzz/src/hb-ot-cmap-table.hh 53
../../src/harfbuzz/src/hb-ot-os2-table.hh 10
../../src/harfbuzz/src/hb-ot-shaper-arabic-pua.hh 4
../../src/harfbuzz/src/hb-ot-color.cc 12
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-machinery.hh 87
../../src/harfbuzz/src/OT/Color/COLR/../CPAL/CPAL.hh 13
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-blob.hh 37
../../src/harfbuzz/src/OT/Color/COLR/COLR.hh 73
../../src/harfbuzz/src/OT/Color/COLR/../../../hb-paint-bounded.hh 1
../../src/harfbuzz/src/OT/Color/svg/svg.hh 13
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-map.hh 1
../../src/harfbuzz/src/OT/Color/CBDT/CBDT.hh 23
../../src/harfbuzz/src/OT/Color/sbix/sbix.hh 12
../../src/harfbuzz/src/hb-map.cc 4
../../src/harfbuzz/src/hb-ot-layout-base-table.hh 29
../../src/harfbuzz/src/hb-ot-math.cc 10
../../src/harfbuzz/src/hb-ot-math-table.hh 45
../../src/harfbuzz/src/hb-ot-meta.cc 2
../../src/harfbuzz/src/hb-ot-meta-table.hh 11
../../src/harfbuzz/src/hb-ot-metrics.cc 6
../../src/harfbuzz/src/hb-ot-var-mvar-table.hh 3
../../src/harfbuzz/src/OT/glyf/../../hb-ot-hhea-table.hh 2
../../src/harfbuzz/src/hb-ot-hhea-table.hh 2
../../src/harfbuzz/src/hb-ot-post-table.hh 7
../../src/harfbuzz/src/hb-ot-name.cc 7
../../src/harfbuzz/src/OT/name/../../hb-machinery.hh 10
../../src/harfbuzz/src/OT/name/name.hh 19
../../src/harfbuzz/src/OT/name/../../hb-blob.hh 7
../../src/harfbuzz/src/OT/name/../../hb-sanitize.hh 8
../../src/harfbuzz/src/OT/name/../../hb-open-type.hh 4
../../src/harfbuzz/src/hb-ot-name-language-static.hh 4
../../src/harfbuzz/src/OT/name/../../hb-utf.hh 8
../../src/harfbuzz/src/OT/glyf/../../hb-ot-hmtx-table.hh 4
../../src/harfbuzz/src/OT/glyf/glyf.hh 1
../../src/harfbuzz/src/OT/glyf/../../hb-ot-var-gvar-table.hh 5
../../src/harfbuzz/src/hb-subset-plan.hh 1
../../src/harfbuzz/src/hb-ot-cff1-table.hh 8
../../src/harfbuzz/src/hb-cff-interp-dict-common.hh 7
../../src/harfbuzz/src/hb-cff-interp-common.hh 5
../../src/harfbuzz/src/hb-ot-cff2-table.hh 8
../../src/harfbuzz/src/OT/Var/VARC/VARC.hh 3

Fuzzer: hb-subset-fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 11895 26.1%
gold [1:9] 554 1.21%
yellow [10:29] 467 1.02%
greenyellow [30:49] 429 0.94%
lawngreen 50+ 32084 70.6%
All colors 45429 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
247 18826 cff2_path_procs_extents_t::curve(CFF::cff2_cs_interp_env_t &, cff2_extents_param_t&, CFF::point_t const&, CFF::point_t const&, CFF::point_t const&) call site: 18826
126 19442 hb_hashmap_t , false>::alloc(unsigned int) call site: 19442
116 18708 CFF::biased_subrs_t > >::operator[](unsigned int) const call site: 18708
78 39625 CrapHelper >::get_crap() call site: 39625 _ZN2OT8CFFIndexINS_7NumTypeILb1EtLj2EEEE9serializeI11hb_vector_tI10hb_array_tIKhELb0EETnPN12hb_enable_ifIXsr14hb_is_iterableIT_EE5valueEvE4typeELPv0EEEbP22hb_serialize_context_tRKSB_PKjj
70 19704 _get_table_tags(hb_subset_plan_t const*, unsigned int, unsigned int*, unsigned int*) call site: 19704 _ZorIN23hb_bit_set_invertible_t6iter_tE24hb_filter_iter_factory_tIZL15_get_table_tagsPK16hb_subset_plan_tjPjS6_E3$_2RK4$_22ETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NSD_6item_tEEE5valueEvE4typeELPv0EEDTclclsr3stdE7forwardIT0_Efp0_Eclsr3stdE7forwardISD_Efp_EEEOSD_OSJ_
63 25797 hb_iter_t , OT::Layout::Common::Coverage::iter_t>, hb_set_t&, $_6 const&, (void*)0>, $_7 const&, (hb_function_sortedness_t)1, (void*)0>, unsigned int>::operator++() & call site: 25797 _ZN2OT6Layout6Common17CoverageFormat2_4INS0_11MediumTypesEE9serializeI13hb_map_iter_tI16hb_filter_iter_tI13hb_zip_iter_tI14hb_iota_iter_tIjjENS1_8Coverage6iter_tEER8hb_set_tRK3$_6LPv0EERK3$_7L24hb_function_sortedness_t1ELSJ_0EETnPN12hb_enable_ifIXaasr15hb_is_source_ofIT_jEE5valuesrSR_18is_sorted_iteratorEvE4typeELSJ_0EEEbP22hb_serialize_context_tSR_
63 45097 hb_table_lazy_loader_t ::convert(hb_blob_t const*) call site: 45097 hb_blob_copy_writable_or_fail
60 39320 cff2_private_dict_op_serializer_t::serialize(hb_serialize_context_t*, CFF::op_str_t const&, unsigned int) const call site: 39320 newlocale
58 39164 hb_vector_t , false>::resize(int) call site: 39164
57 21131 hb_vector_t const*, false>::resize_full(int, bool, bool) call site: 21131 _ZNK3$_44implIiTnPN12hb_enable_ifIXaasr3std11is_integralIT_EE5valuelestS2_Lm4EEvE4typeELPv0EEEN10_hb_head_tIjJDTmlcvjfp_Lj2654435761EEEE4typeERKS2_11hb_priorityILj1EE
54 21331 hb_vector_t , false>::resize_full(int, bool, bool) call site: 21331 _ZN11hb_vector_tIhLb0EE10copy_arrayIhTnPN12hb_enable_ifIXsr3std21is_trivially_copyableIT_EE5valueEvE4typeELPv0EEEv10hb_array_tIKhE
52 25861 hb_vector_t graph::actuate_subtable_split (graph::MarkBasePosFormat1::split_context_t&, hb_vector_t const&) call site: 25861 _ZorI13hb_zip_iter_tI14hb_iota_iter_tIjjEN2OT6Layout6Common8Coverage6iter_tEE24hb_filter_iter_factory_tIR8hb_set_tRK3$_6ETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NSH_6item_tEEE5valueEvE4typeELPv0EEDTclclsr3stdE7forwardIT0_Efp0_Eclsr3stdE7forwardISH_Efp_EEEOSH_OSN_

Runtime coverage analysis

Covered functions
22632
Functions that are reachable but not covered
6602
Reachable functions
48494
Percentage of reachable functions covered
86.39%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
../../src/harfbuzz/test/fuzzing/hb-subset-fuzzer.cc 2
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 1
../../src/harfbuzz/src/hb-blob.cc 15
../../src/harfbuzz/src/hb-null.hh 1009
../../src/harfbuzz/src/hb-object.hh 149
../../src/harfbuzz/src/hb-common.cc 4
../../src/harfbuzz/src/failing-alloc.c 5
../../src/harfbuzz/src/hb-blob.hh 279
../../src/harfbuzz/src/hb-atomic.hh 159
../../src/harfbuzz/src/hb-debug.hh 79
../../src/harfbuzz/src/hb-algs.hh 2467
../../src/harfbuzz/src/hb-vector.hh 1600
../../src/harfbuzz/src/hb-mutex.hh 8
../../src/harfbuzz/src/hb-face.cc 19
../../src/harfbuzz/src/hb-sanitize.hh 670
../../src/harfbuzz/src/hb-dispatch.hh 100
../../src/harfbuzz/src/hb-open-file.hh 27
../../src/harfbuzz/src/hb-open-type.hh 1670
../../src/harfbuzz/src/hb-machinery.hh 852
../../src/harfbuzz/src/hb-face.hh 5
../../src/harfbuzz/src/hb-shaper.hh 6
../../src/harfbuzz/src/hb-shaper-list.hh 12
../../src/harfbuzz/src/hb-ot-face.hh 1
../../src/harfbuzz/src/hb-ot-face.cc 2
../../src/harfbuzz/src/hb-array.hh 1050
../../src/harfbuzz/src/hb-iter.hh 8912
../../src/harfbuzz/src/hb-meta.hh 1069
../../src/harfbuzz/src/hb-set.cc 9
../../src/harfbuzz/src/hb-set.hh 53
../../src/harfbuzz/src/hb-bit-set-invertible.hh 46
../../src/harfbuzz/src/hb-bit-set.hh 69
../../src/harfbuzz/src/hb-ot-cmap-table.hh 120
../../src/harfbuzz/src/hb-static.cc 4
../../src/harfbuzz/src/OT/glyf/../../hb-ot-head-table.hh 2
../../src/harfbuzz/src/OT/glyf/loca.hh 1
../../src/harfbuzz/src/OT/glyf/../../hb-ot-maxp-table.hh 8
../../src/harfbuzz/src/hb-cache.hh 5
../../src/harfbuzz/src/hb-ot-os2-table.hh 15
../../src/harfbuzz/src/hb-ot-shaper-arabic-pua.hh 4
../../src/harfbuzz/src/hb-bit-page.hh 44
../../src/harfbuzz/src/hb-subset-input.cc 6
../../src/harfbuzz/src/hb-map.hh 737
../../src/harfbuzz/src/hb-subset-input.hh 8
../../src/harfbuzz/src/hb-cplusplus.hh 28
../../src/harfbuzz/src/hb-shape-plan.cc 1
../../src/harfbuzz/src/hb-shape-plan.hh 2
../../src/harfbuzz/src/hb-ot-shape.hh 1
../../src/harfbuzz/src/hb-ot-shape.cc 3
../../src/harfbuzz/src/hb-ot-map.hh 2
../../src/harfbuzz/src/hb-aat-map.hh 1
../../src/harfbuzz/src/hb-fallback-shape.cc 2
../../src/harfbuzz/src/OT/glyf/../../hb-ot-hmtx-table.hh 28
../../src/harfbuzz/src/hb-ot-post-table.hh 8
../../src/harfbuzz/src/OT/name/name.hh 14
../../src/harfbuzz/src/hb-ot-meta-table.hh 2
../../src/harfbuzz/src/OT/glyf/glyf.hh 11
../../src/harfbuzz/src/OT/glyf/../../hb-ot-var-gvar-table.hh 36
../../src/harfbuzz/src/hb-subset-plan.hh 85
../../src/harfbuzz/src/hb-ot-cff1-table.hh 93
../../src/harfbuzz/src/hb-cff-interp-dict-common.hh 39
../../src/harfbuzz/src/hb-cff-interp-common.hh 129
../../src/harfbuzz/src/hb-ot-cff2-table.hh 46
../../src/harfbuzz/src/OT/Var/VARC/VARC.hh 3
../../src/harfbuzz/src/hb-ot-kern-table.hh 2
../../src/harfbuzz/src/hb-aat-layout-common.hh 1
../../src/harfbuzz/src/hb-aat-layout-kerx-table.hh 4
../../src/harfbuzz/src/OT/Layout/GDEF/GDEF.hh 28
../../src/harfbuzz/src/OT/Layout/GSUB/GSUB.hh 6
../../src/harfbuzz/src/OT/Layout/GPOS/../../../hb-ot-layout-gsubgpos.hh 376
../../src/harfbuzz/src/OT/Layout/GPOS/GPOS.hh 7
../../src/harfbuzz/src/hb-aat-layout-morx-table.hh 6
../../src/harfbuzz/src/OT/Color/COLR/COLR.hh 285
../../src/harfbuzz/src/hb-paint-extents.hh 1
../../src/harfbuzz/src/OT/Color/COLR/../../../hb-paint-bounded.hh 1
../../src/harfbuzz/src/OT/Color/CBDT/CBDT.hh 39
../../src/harfbuzz/src/OT/Color/sbix/sbix.hh 10
../../src/harfbuzz/src/OT/Color/svg/svg.hh 3
../../src/harfbuzz/src/hb-subset.cc 12
../../src/harfbuzz/src/hb-subset-plan.cc 33
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-vector.hh 16
../../src/harfbuzz/src/hb-face-builder.cc 10
../../src/harfbuzz/src/hb-serialize.hh 1374
../../src/harfbuzz/src/hb-free-pool.hh 5
../../src/harfbuzz/src/hb-map.cc 4
../../src/harfbuzz/src/hb-subset-instancer-solver.hh 10
../../src/harfbuzz/src/hb-subset-accelerator.hh 5
../../src/harfbuzz/src/hb-subset-plan-var.cc 8
../../src/harfbuzz/src/hb-ot-var-fvar-table.hh 24
../../src/harfbuzz/src/hb-ot-var-avar-table.hh 18
../../src/harfbuzz/src/hb-ot-layout-common.hh 106
../../src/harfbuzz/src/OT/Layout/GDEF/../../../hb-ot-layout-common.hh 91
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-algs.hh 4
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-null.hh 8
../../src/harfbuzz/src/hb-unicode.cc 13
../../src/harfbuzz/src/hb-ucd.cc 13
../../src/harfbuzz/src/hb-unicode.hh 3
../../src/harfbuzz/src/hb-ucd-table.hh 6
../../src/harfbuzz/src/hb-multimap.hh 6
../../src/harfbuzz/src/OT/glyf/../../hb-ot-var-hvar-table.hh 3
../../src/harfbuzz/src/OT/glyf/../../hb-ot-hhea-table.hh 2
../../src/harfbuzz/src/hb-ot-cff-common.hh 59
../../src/harfbuzz/src/hb-number.cc 1
hb-number-parser.rl 2
../../src/harfbuzz/src/hb-subset-cff-common.hh 104
../../src/harfbuzz/src/hb-subset-plan-layout.cc 11
../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookup.hh 11
../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookupSubTable.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubst.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat1.hh 14
../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/CoverageFormat1.hh 2
../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/CoverageFormat2.hh 2
../../src/harfbuzz/src/OT/Layout/Common/Coverage.hh 10
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat1.hh 16
../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh 18
../../src/harfbuzz/src/OT/Layout/Common/RangeRecord.hh 10
../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat2.hh 10
../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubst.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubstFormat1.hh 12
../../src/harfbuzz/src/OT/Layout/GSUB/Sequence.hh 4
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubst.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubstFormat1.hh 12
../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSet.hh 4
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubst.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubstFormat1.hh 14
../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSet.hh 10
../../src/harfbuzz/src/OT/Layout/GSUB/Ligature.hh 6
../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubst.hh 5
../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubstFormat1.hh 5
../../src/harfbuzz/src/hb-ot-layout.cc 16
../../src/harfbuzz/src/OT/Layout/GPOS/PosLookup.hh 7
../../src/harfbuzz/src/OT/Layout/GPOS/PosLookupSubTable.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePos.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/ValueFormat.hh 9
../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat2.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/PairPos.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat1.hh 12
../../src/harfbuzz/src/OT/Layout/GPOS/PairSet.hh 10
../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat2.hh 8
../../src/harfbuzz/src/OT/Layout/GPOS/CursivePos.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/CursivePosFormat1.hh 7
../../src/harfbuzz/src/OT/Layout/GPOS/Anchor.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat1.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat2.hh 1
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat3.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePos.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePosFormat1.hh 12
../../src/harfbuzz/src/OT/Layout/GPOS/MarkArray.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkRecord.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/AnchorMatrix.hh 2
../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPos.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPosFormat1.hh 12
../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPos.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPosFormat1.hh 12
../../src/harfbuzz/src/OT/Layout/GDEF/../../../hb-open-type.hh 26
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-open-type.hh 2
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-machinery.hh 1
../../src/harfbuzz/src/hb-ot-layout-gsub-table.hh 2
../../src/harfbuzz/src/hb-ot-layout-gpos-table.hh 1
../../src/harfbuzz/src/hb-ot-math-table.hh 45
../../src/harfbuzz/src/OT/Color/COLR/colrv1-closure.hh 15
../../src/harfbuzz/src/hb-bimap.hh 19
../../src/harfbuzz/src/hb-ot-stat-table.hh 41
../../src/harfbuzz/src/OT/Color/COLR/../CPAL/CPAL.hh 6
../../src/harfbuzz/src/OT/glyf/Glyph.hh 14
../../src/harfbuzz/src/OT/glyf/CompositeGlyph.hh 26
../../src/harfbuzz/src/OT/glyf/SimpleGlyph.hh 15
../../src/harfbuzz/src/OT/glyf/composite-iter.hh 8
../../src/harfbuzz/src/OT/glyf/GlyphHeader.hh 1
../../src/harfbuzz/src/hb-ot-cff1-table.cc 9
../../src/harfbuzz/src/hb-cff1-interp-cs.hh 15
../../src/harfbuzz/src/hb-cff-interp-cs-common.hh 229
../../src/harfbuzz/src/graph/../OT/Layout/Common/Coverage.hh 31
../../src/harfbuzz/src/graph/../OT/Layout/Common/CoverageFormat1.hh 42
../../src/harfbuzz/src/graph/../OT/Layout/Common/CoverageFormat2.hh 42
../../src/harfbuzz/src/OT/Layout/GPOS/PairValueRecord.hh 2
../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/Coverage.hh 3
../../src/harfbuzz/src/hb-ot-layout-base-table.hh 49
../../src/harfbuzz/src/hb-font.cc 12
../../src/harfbuzz/src/hb-font.hh 8
../../src/harfbuzz/src/hb-ot-var.cc 3
../../src/harfbuzz/src/hb-ot-cff2-table.cc 10
../../src/harfbuzz/src/hb-cff2-interp-cs.hh 46
../../src/harfbuzz/src/hb-subset-table.hh 93
../../src/harfbuzz/src/hb-subset-table-layout.cc 1
../../src/harfbuzz/src/hb-subset.hh 332
../../src/harfbuzz/src/graph/../OT/Layout/GDEF/GDEF.hh 17
../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../hb-ot-var-common.hh 73
../../src/harfbuzz/src/graph/../hb-ot-layout-common.hh 226
../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../hb-subset-instancer-iup.hh 2
../../src/harfbuzz/src/hb-subset-instancer-solver.cc 7
../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../hb-alloc-pool.hh 4
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-array.hh 4
../../src/harfbuzz/src/hb-subset-instancer-iup.cc 10
../../src/harfbuzz/src/graph/../hb-priority-queue.hh 17
../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/RangeRecord.hh 2
../../src/harfbuzz/src/hb-repacker.hh 9
../../src/harfbuzz/src/graph/graph.hh 99
../../src/harfbuzz/src/graph/serialize.hh 13
../../src/harfbuzz/src/graph/gsubgpos-context.cc 2
../../src/harfbuzz/src/graph/../hb-map.hh 2
../../src/harfbuzz/src/graph/../hb-object.hh 1
../../src/harfbuzz/src/graph/gsubgpos-graph.hh 29
../../src/harfbuzz/src/graph/../hb-atomic.hh 2
../../src/harfbuzz/src/graph/../hb-ot-layout-gsubgpos.hh 45
../../src/harfbuzz/src/OT/Layout/GSUB/../../../hb-ot-layout-common.hh 2
../../src/harfbuzz/src/graph/pairpos-graph.hh 32
../../src/harfbuzz/src/graph/split-helpers.hh 4
../../src/harfbuzz/src/graph/gsubgpos-context.hh 2
../../src/harfbuzz/src/graph/coverage-graph.hh 17
../../src/harfbuzz/src/graph/classdef-graph.hh 13
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/ValueFormat.hh 10
../../src/harfbuzz/src/graph/markbasepos-graph.hh 21
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkRecord.hh 3
../../src/harfbuzz/src/graph/ligature-graph.hh 21
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SubstLookupSubTable.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SingleSubst.hh 17
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SingleSubstFormat1.hh 14
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SingleSubstFormat2.hh 12
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/MultipleSubst.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/MultipleSubstFormat1.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/Sequence.hh 6
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/AlternateSubst.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/AlternateSubstFormat1.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/AlternateSet.hh 4
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/LigatureSubst.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/LigatureSubstFormat1.hh 4
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/LigatureSet.hh 6
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/Ligature.hh 6
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/ReverseChainSingleSubst.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GSUB/ReverseChainSingleSubstFormat1.hh 4
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PosLookupSubTable.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/SinglePos.hh 7
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/SinglePosFormat1.hh 4
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/SinglePosFormat2.hh 8
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairPos.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairPosFormat1.hh 6
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairValueRecord.hh 8
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairSet.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairPosFormat2.hh 4
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/CursivePos.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/CursivePosFormat1.hh 5
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/Anchor.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorFormat1.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorFormat2.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorFormat3.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkBasePos.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkBasePosFormat1.hh 6
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkArray.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorMatrix.hh 3
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkLigPos.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkLigPosFormat1.hh 2
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/LigatureArray.hh 4
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkMarkPos.hh 1
../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkMarkPosFormat1.hh 6
../../src/harfbuzz/src/hb-subset-table-var.cc 1
../../src/harfbuzz/src/hb-ot-var-hvar-table.hh 24
../../src/harfbuzz/src/hb-ot-var-gvar-table.hh 15
../../src/harfbuzz/src/hb-ot-var-common.hh 34
../../src/harfbuzz/src/hb-ot-var-cvar-table.hh 7
../../src/harfbuzz/src/hb-ot-var-mvar-table.hh 6
../../src/harfbuzz/src/hb-subset-table-cff.cc 3
../../src/harfbuzz/src/hb-subset-cff1.cc 47
../../src/harfbuzz/src/hb-subset-cff-common.cc 4
../../src/harfbuzz/src/OT/Var/VARC/../../../hb-iter.hh 1
../../src/harfbuzz/src/hb-subset-cff2.cc 33
../../src/harfbuzz/src/hb-cff-width-optimizer.hh 9
../../src/harfbuzz/src/hb-cff-specializer.hh 4
../../src/harfbuzz/src/hb-subset-cff2-to-cff1.hh 2
../../src/harfbuzz/src/hb-ot-vorg-table.hh 4
../../src/harfbuzz/src/hb-subset-table-color.cc 1
../../src/harfbuzz/src/OT/Color/CPAL/CPAL.hh 3
../../src/harfbuzz/src/hb-subset-table-other.cc 1
../../src/harfbuzz/src/OT/glyf/SubsetGlyph.hh 8
../../src/harfbuzz/src/OT/glyf/../../hb-decycler.hh 4
../../src/harfbuzz/src/OT/glyf/glyf-helpers.hh 4
../../src/harfbuzz/src/hb-ot-hdmx-table.hh 9
../../src/harfbuzz/src/hb-utf.hh 1
../../src/harfbuzz/src/OT/name/../../hb-utf.hh 2
../../src/harfbuzz/src/hb-ot-os2-unicode-ranges.hh 2
../../src/harfbuzz/src/hb-ot-post-table-v2subset.hh 3
../../src/harfbuzz/src/hb-string-array.hh 1
../../src/harfbuzz/src/hb-ot-head-table.hh 2

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

../../src/harfbuzz/test/fuzzing/hb-set-fuzzer.cc

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['LLVMFuzzerTestOneInput']

../../src/harfbuzz/test/fuzzing/hb-repacker-fuzzer.cc

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['hb_iter_t, OT::Layout::Common::Coverage::iter_t>, hb_set_t&, $_6 const&, (void*)0>, $_7 const&, (hb_function_sortedness_t)1, (void*)0>, unsigned int>::operator++() &', 'hb_array_t::qsort(int (*)(void const*, void const*))', 'CrapHelper >::get_crap()', 'hb_serialize_context_t::check_success(bool, hb_serialize_error_t)', 'OT::ArrayOf, OT::NumType >::operator[](int)', 'graph::graph_t::vertex_t::is_shared() const', 'hb_iter_t >, graph::Coverage::filter_coverage(graph::gsubgpos_graph_context_t&, unsigned int, unsigned int, unsigned int)::{lambda(hb_pair_t)#1}, $_19 const&, (void*)0>, $_6 const&, (hb_function_sortedness_t)1, ($_19 const&)0>, unsigned int>::operator++() &', 'hb_filter_iter_t::item_t>, bool (hb_hashmap_t::item_t::*)() const, $_19 const&, (void*)0>::__next__()', 'hb_iter_t, graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(unsigned int)#2}, $_7 const&, (hb_function_sortedness_t)0>, graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(hb_pair_t)#1}, (graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(unsigned int)#1})1, (hb_function_sortedness_t)0>, hb_filter_iter_t, graph::PairPosFormat2::clone_range(graph::PairPosFormat2::split_context_t&, unsigned int, unsigned int) const::{lambda(unsigned int)#2}, $_7 const&, (hb_function_sortedness_t)0> >::operator++() &', 'hb_serialize_context_t::pop_pack(bool)']

../../src/harfbuzz/test/fuzzing/hb-draw-fuzzer.cc

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['hb_ot_face_t::init0(hb_face_t*)', 'hb_lazy_loader_t::get_unconst() const', 'OT::Layout::GPOS_impl::ValueFormat::sanitize_value(hb_sanitize_context_t*, OT::Layout::GPOS_impl::ValueBase const*, OT::NumType const*) const', 'hb_array_t, void, true> const>::sub_array(unsigned int, unsigned int*) const', 'CrapHelper::get_crap()', 'hb_atomic_t::operator hb_face_t::plan_node_t*() const', 'void hb_object_trace(hb_blob_t const*, char const*)', 'hb_lazy_loader_t, hb_face_t, 30u, AAT::morx_accelerator_t>::do_destroy(AAT::morx_accelerator_t*)', 'hb_draw_funcs_t::start_path(void*, hb_draw_state_t&)', 'hb_bit_page_t::elt(unsigned int)']

../../src/harfbuzz/test/fuzzing/hb-shape-fuzzer.cc

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['hb_ot_tags_from_complex_language(char const*, char const*, unsigned int*, unsigned int*)', 'hb_ot_metrics_get_variation', 'hb_lazy_loader_t, hb_face_t, 7u, OT::post_accelerator_t>::get() const', 'hb_ot_face_t::init0(hb_face_t*)', 'hb_buffer_t::verify(hb_buffer_t*, hb_font_t*, hb_feature_t const*, unsigned int, char const* const*)', 'hb_lazy_loader_t::get_unconst() const', 'CrapHelper::get_crap()', 'OT::OffsetTo, void, true>::operator()(void const*) const', 'OT::Device::sanitize(hb_sanitize_context_t*) const', 'NullHelper::get_null()']

../../src/harfbuzz/test/fuzzing/hb-subset-fuzzer.cc

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['cff2_path_procs_extents_t::curve(CFF::cff2_cs_interp_env_t&, cff2_extents_param_t&, CFF::point_t const&, CFF::point_t const&, CFF::point_t const&)', 'hb_hashmap_t, false>::alloc(unsigned int)', 'CFF::biased_subrs_t > >::operator[](unsigned int) const', 'CrapHelper >::get_crap()', '_get_table_tags(hb_subset_plan_t const*, unsigned int, unsigned int*, unsigned int*)', 'hb_iter_t, OT::Layout::Common::Coverage::iter_t>, hb_set_t&, $_6 const&, (void*)0>, $_7 const&, (hb_function_sortedness_t)1, (void*)0>, unsigned int>::operator++() &', 'hb_table_lazy_loader_t::convert(hb_blob_t const*)', 'cff2_private_dict_op_serializer_t::serialize(hb_serialize_context_t*, CFF::op_str_t const&, unsigned int) const', 'hb_vector_t, false>::resize(int)', 'hb_vector_t const*, false>::resize_full(int, bool, bool)']

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
unsignedinthb_bit_storage (unsignedint) 49 5 10.20% ['hb-shape-fuzzer', 'hb-subset-fuzzer', 'hb-repacker-fuzzer']
unsignedinthb_ctz (unsignedlonglong) 48 8 16.66% ['hb-subset-fuzzer', 'hb-repacker-fuzzer']
unsignedinthb_popcount (unsignedlonglong) 35 7 20.0% ['hb-subset-fuzzer', 'hb-repacker-fuzzer']
unsignedinthb_bit_storage (unsignedlonglong) 49 8 16.32% ['hb-subset-fuzzer', 'hb-repacker-fuzzer']
hb_font_t::draw_glyph_or_fail(unsignedint,hb_draw_funcs_t*,void*,bool) 42 13 30.95% ['hb-shape-fuzzer', 'hb-draw-fuzzer']
_hb_ot_metrics_get_position_common(hb_font_t*,hb_ot_metrics_tag_t,int*) 34 15 44.11% ['hb-shape-fuzzer', 'hb-draw-fuzzer']
OT::Layout::GPOS_impl::PairPosFormat2_4 ::apply(OT::hb_ot_apply_context_t*,void*)const 107 51 47.66% ['hb-shape-fuzzer']
OT::Layout::GPOS_impl::PairPosFormat2_4 ::apply(OT::hb_ot_apply_context_t*,void*)const 107 51 47.66% ['hb-shape-fuzzer']
OT::Layout::GSUB_impl::Ligature ::apply(OT::hb_ot_apply_context_t*)const 69 34 49.27% ['hb-shape-fuzzer']
OT::Layout::GSUB_impl::Ligature ::apply(OT::hb_ot_apply_context_t*)const 69 34 49.27% ['hb-shape-fuzzer']
OT::Layout::GSUB_impl::Sequence ::apply(OT::hb_ot_apply_context_t*)const 75 31 41.33% ['hb-shape-fuzzer']
OT::Layout::GSUB_impl::Sequence ::apply(OT::hb_ot_apply_context_t*)const 75 31 41.33% ['hb-shape-fuzzer']
unsignedintOT::hb_ot_name_convert_utf >,hb_utf16_xe_t >(hb_array_t ,unsignedint*,hb_utf16_xe_t ::codepoint_t*) 31 16 51.61% ['hb-shape-fuzzer']
unsignedintOT::hb_ot_name_convert_utf >(hb_array_t ,unsignedint*,hb_utf16_xe_t ::codepoint_t*) 31 16 51.61% ['hb-shape-fuzzer']
unsignedintOT::hb_ot_name_convert_utf >,hb_utf32_xe_t >(hb_array_t ,unsignedint*,hb_utf32_xe_t ::codepoint_t*) 31 16 51.61% ['hb-shape-fuzzer']
unsignedintOT::hb_ot_name_convert_utf >(hb_array_t ,unsignedint*,hb_utf32_xe_t ::codepoint_t*) 31 16 51.61% ['hb-shape-fuzzer']
hb_aat_map_builder_t::compile(hb_aat_map_t&) 67 6 8.955% ['hb-shape-fuzzer']
unsignedinthb_ctz (unsignedint) 48 5 10.41% ['hb-shape-fuzzer']
unsignedinthb_popcount (hb_glyph_flags_t) 35 4 11.42% ['hb-shape-fuzzer']
hb_ot_metrics_get_position 84 12 14.28% ['hb-shape-fuzzer']
hb_ensure_native_direction(hb_buffer_t*) 33 8 24.24% ['hb-shape-fuzzer']
apply_stch(hb_ot_shape_plan_tconst*,hb_buffer_t*,hb_font_t*) 136 3 2.205% ['hb-shape-fuzzer']
hb_ot_tags_from_complex_language(charconst*,charconst*,unsignedint*,unsignedint*) 1210 67 5.537% ['hb-shape-fuzzer']
hb_ot_tags_from_script_and_language 45 24 53.33% ['hb-shape-fuzzer']
parse_private_use_subtag(charconst*,unsignedint*,unsignedint*,charconst*,unsignedchar(*)(unsignedchar)) 32 2 6.25% ['hb-shape-fuzzer']
hb_ot_tags_from_language(charconst*,charconst*,unsignedint*,unsignedint*) 67 32 47.76% ['hb-shape-fuzzer']
hb_shapers_lazy_loader_t::create() 32 4 12.5% ['hb-shape-fuzzer']
hb_utf8_t::next(unsignedcharconst*,unsignedcharconst*,unsignedint*,unsignedint) 56 6 10.71% ['hb-shape-fuzzer', 'hb-subset-fuzzer']
hb_vector_t ::alloc(unsignedint,bool) 41 22 53.65% ['hb-shape-fuzzer']
OT::COLR::subset_varstore(hb_subset_context_t*,OT::COLR*)const 46 15 32.60% ['hb-subset-fuzzer']
OT::Layout::GPOS_impl::PairPosFormat2_4 ::subset(hb_subset_context_t*)const 44 24 54.54% ['hb-subset-fuzzer']
OT::Layout::GPOS_impl::PairPosFormat2_4 ::collect_variation_indices(OT::hb_collect_variation_indices_context_t*)const 41 2 4.878% ['hb-subset-fuzzer']
OT::NameRecord::copy(hb_serialize_context_t*,voidconst*,hb_hashmap_t ,false>const*)const 52 16 30.76% ['hb-subset-fuzzer']
boolhb_hashmap_t ::set_with_hash (unsignedint&&,unsignedint,int&&,bool) 40 21 52.5% ['hb-subset-fuzzer']
boolhb_hashmap_t const*,unsignedint,false>::set_with_hash const*,unsignedint>(hb_hashmap_t const*&&,unsignedint,unsignedint&&,bool) 40 21 52.5% ['hb-subset-fuzzer']
boolhb_hashmap_t const*,hb_vector_t ,false>::set_with_hash const*const&,hb_vector_t >(hb_vector_t const*const&,unsignedint,hb_vector_t &&,bool) 40 21 52.5% ['hb-subset-fuzzer']
boolhb_hashmap_t const*,unsignedint,false>::set_with_hash const*const&,int>(hb_vector_t const*const&,unsignedint,int&&,bool) 40 21 52.5% ['hb-subset-fuzzer']
boolhb_hashmap_t ,14u>,false>const*,unsignedint,false>::set_with_hash ,14u>,false>*,int>(hb_vector_t ,14u>,false>*&&,unsignedint,int&&,bool) 40 21 52.5% ['hb-subset-fuzzer']
_ZN2OT8CFFIndexINS_7NumTypeILb1EtLj2EEEE16serialize_headerI10hb_array_tIKS5_IKhEETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NSB_6item_tEEE5valueEvE4typeELPv0EEEbP22hb_serialize_context_tSB_jj 75 41 54.66% ['hb-subset-fuzzer']
_ZN2OT8CFFIndexINS_7NumTypeILb1EtLj2EEEE16serialize_headerI10hb_array_tIKjETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NS9_6item_tEEE5valueEvE4typeELPv0EEEbP22hb_serialize_context_tS9_jj 75 41 54.66% ['hb-subset-fuzzer']
_ZN2OT8CFFIndexINS_7NumTypeILb1EtLj2EEEE16serialize_headerI10hb_array_tIjETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NS8_6item_tEEE5valueEvE4typeELPv0EEEbP22hb_serialize_context_tS8_jj 75 30 40.0% ['hb-subset-fuzzer']
_ZN2OT8CFFIndexINS_7NumTypeILb1EjLj4EEEE16serialize_headerI10hb_array_tIKjETnPN12hb_enable_ifIXsr17hb_is_iterator_ofIT_NS9_6item_tEEE5valueEvE4typeELPv0EEEbP22hb_serialize_context_tS9_jj 75 41 54.66% ['hb-subset-fuzzer']
OT::hmtxvmtx ::subset_update_header(hb_subset_context_t*,unsignedint,hb_hashmap_t ,false>const*,hb_vector_t const&)const 83 17 20.48% ['hb-subset-fuzzer']
OT::SegmentMaps::subset(hb_subset_context_t*,unsignedint)const 38 5 13.15% ['hb-subset-fuzzer']
OT::avar::map_coords_2_14(float*,unsignedint)const 34 16 47.05% ['hb-subset-fuzzer']
OT::tuple_delta_t::change_tuple_var_axis_limit(unsignedint,Triple,TripleDistances,hb_vector_t &,hb_pair_t ,false>,hb_vector_t ,false>>&,hb_alloc_pool_t*) 34 16 47.05% ['hb-subset-fuzzer']
OT::tuple_delta_t::calc_inferred_deltas(contour_point_vector_tconst&,hb_vector_t &) 77 30 38.96% ['hb-subset-fuzzer']
boolOT::HVARVVAR::_subset (hb_subset_context_t*)const 44 24 54.54% ['hb-subset-fuzzer']
boolOT::HVARVVAR::_subset (hb_subset_context_t*)const 44 23 52.27% ['hb-subset-fuzzer']
cff2_cs_opset_flatten_t::flush_args_and_op(unsignedint,CFF::cff2_cs_interp_env_t &,CFF::flatten_param_t&) 64 23 35.93% ['hb-subset-fuzzer']
_iup_contour_optimize(hb_array_t ,hb_array_t ,hb_array_t ,hb_array_t ,double,iup_scratch_t&) 135 25 18.51% ['hb-subset-fuzzer']
_solve(Triple,Triple,hb_vector_t ,false>&,bool) 100 11 11.0% ['hb-subset-fuzzer']
update_instance_metrics_map_from_cff2(hb_subset_plan_t*) 75 4 5.333% ['hb-subset-fuzzer']
_create_old_gid_to_new_gid_map(hb_face_tconst*,bool,hb_set_tconst*,hb_map_tconst*,hb_map_t*,hb_map_t*,hb_vector_t ,true>*,unsignedint*) 73 36 49.31% ['hb-subset-fuzzer']
bool_hb_subset_table (hb_subset_plan_t*,hb_vector_t &) 52 12 23.07% ['hb-subset-fuzzer']
bool_hb_subset_table (hb_subset_plan_t*,hb_vector_t &) 52 12 23.07% ['hb-subset-fuzzer']
hb_vector_t ,false>::alloc(unsignedint,bool) 41 22 53.65% ['hb-subset-fuzzer']
hb_vector_t >::tuple_variations_t,false>::alloc(unsignedint,bool) 41 20 48.78% ['hb-subset-fuzzer']
hb_vector_t ::alloc(unsignedint,bool) 41 20 48.78% ['hb-subset-fuzzer']
hb_vector_t ,false>::alloc(unsignedint,bool) 41 22 53.65% ['hb-subset-fuzzer']
hb_vector_t ,void,true>*,false>::alloc(unsignedint,bool) 41 22 53.65% ['hb-subset-fuzzer']
hb_vector_t >,false>::alloc(unsignedint,bool) 41 22 53.65% ['hb-subset-fuzzer', 'hb-repacker-fuzzer']
hb_vector_t ,false>::alloc(unsignedint,bool) 41 8 19.51% ['hb-subset-fuzzer']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/work/build/../../src/harfbuzz/src/hb-aat-layout.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-layout-base-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CPAL/CPAL.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/COLR/colrv1-closure.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-face.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PosLookupSubTable.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/Anchor.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var-fvar-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-draw.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-layout-gpos-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/glyf-helpers.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ucd-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/GDEF.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-blob.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-plan.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/VARC.cc [] []
/work/build/../../src/harfbuzz/src/hb-ot-shape-fallback.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-tag-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-iter.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-algs.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/hb-draw-fuzzer.cc ['hb-draw-fuzzer'] []
/work/build/hb-buffer-deserialize-json.rl [] []
/work/build/hb-buffer-deserialize-text-glyphs.rl [] []
/work/build/../../src/harfbuzz/src/hb-paint-extents.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-layout-trak-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ucd.cc ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-static.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-hebrew.cc [] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/VARC.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/Glyph.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/hb-subset-fuzzer.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-paint.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSet.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-unicode.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/glyf.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/Ligature.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shape-normalize.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-machinery.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-meta.hh [] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/LigatureSubst.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cff1-interp-cs.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/SinglePos.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/name/../../hb-machinery.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-ot-maxp-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-multimap.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-cff2-table.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-kern.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-vowel-constraints.cc [] []
/work/build/../../src/harfbuzz/src/hb-ot-var-avar-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SubstLookupSubTable.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/gsubgpos-context.cc ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/coverage-graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePosFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-arabic-fallback.hh [] []
/work/build/../../src/harfbuzz/src/hb-map.cc ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/split-helpers.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkMarkPosFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-cff2.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cff-interp-cs-common.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-object.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PairPos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/CoverageFormat2.hh [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/SinglePos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-plan.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-blob.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/name/name.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat2.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-hangul.cc [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkRecord.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-indic-table.cc [] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-arabic-pua.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-meta-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/CursivePosFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-shape-plan.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var-mvar-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/hb-ot-shaper-use-machine.rl [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubst.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookup.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/Coverage.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SingleSubstFormat2.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/MultipleSubst.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/LigatureSet.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/failing-alloc.c ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-input.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cff-interp-dict-common.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PosLookupSubTable.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-vorg-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-layout-gsub-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorFormat3.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-mutex.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-arabic-table.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-hdmx-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-ot-cff-common.hh [] []
/work/build/../../src/harfbuzz/src/hb-shaper.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/markbasepos-graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/loca.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-bit-page.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/CursivePosFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-cff2-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-input.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-debug.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-paint-extents.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-machinery.hh [] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairPos.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-table-other.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-plan-layout.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/Common/CoverageFormat1.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-outline.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/RangeRecord.hh ['hb-draw-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../hb-ot-layout-common.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../hb-cache.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-math-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-shape-plan.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat2.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/ValueFormat.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubst.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/AlternateSubst.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/Common/Coverage.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PairSet.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSet.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-math.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/ReverseChainSingleSubst.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/hb-repacker-fuzzer.cc ['hb-repacker-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-table-layout.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SingleSubst.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-layout-kerx-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/MultipleSubstFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/GlyphHeader.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-fallback-shape.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/glyf/glyf.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-color.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-serialize.cc ['hb-repacker-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-unicode.cc ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/SinglePosFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-decycler.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/CoverageFormat1.hh ['hb-draw-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkLigPosFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/GSUB.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PosLookup.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/Common/RangeRecord.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-vector.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkMarkPosFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-utf.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/Coverage.hh ['hb-draw-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-cff-common.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-atomic.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-map.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var-gvar-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cff-width-optimizer.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/ValueFormat.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-set-digest.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-map.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-layout-feat-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var-cvar-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-object.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/coord-setter.hh [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/Sequence.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-layout.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-outline.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-ot-layout-common.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/name/../../hb-utf.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-bimap.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-table-cff.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-paint-bounded.cc [] []
/work/build/../../src/harfbuzz/src/hb-subset-instancer-solver.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkArray.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubst.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-face.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-shape.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/CoverageFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/Common/CoverageFormat2.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cff-interp-common.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-array.hh ['hb-draw-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/SimpleGlyph.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/pairpos-graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cache.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cplusplus.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-hhea-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubstFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/hb-ot-shaper-indic-machine.rl [] []
/work/build/../../src/harfbuzz/src/hb-subset-instancer-solver.cc ['hb-subset-fuzzer'] []
/work/build/hb-ot-shaper-khmer-machine.rl [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat3.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/../api/test-ot-face.c ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-bit-set-invertible.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/AlternateSet.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/COLR/COLR.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-common.cc ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PairPosFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/CursivePos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkLigPos.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/composite-iter.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkBasePosFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-vector.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/name/../../hb-blob.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/GPOS.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-kern-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-blob.cc ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-font.cc [] []
/work/build/../../src/harfbuzz/src/hb-sanitize.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-blob.hh [] []
/work/build/../../src/harfbuzz/src/OT/glyf/CompositeGlyph.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-instancer-iup.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/gsubgpos-graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/RangeRecord.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-face.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/Ligature.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/SingleSubstFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var-common.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-cff1-table.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkRecord.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-font.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shape.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-geometry.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/ReverseChainSingleSubstFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-ot-head-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkBasePos.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/ligature-graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/Sequence.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/CursivePos.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/hb-set-fuzzer.cc ['hb-set-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-ot-layout-gsubgpos.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/AlternateSubstFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-paint.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-array.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-table-color.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-layout-common.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/CoverageFormat2.hh ['hb-draw-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/PairValueRecord.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-table-var.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairPosFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../hb-ot-layout-gsubgpos.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-myanmar.cc [] []
/work/build/../../src/harfbuzz/src/hb-cff-specializer.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-ot-var-gvar-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkArray.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-null.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-null.hh [] []
/work/build/../../src/harfbuzz/src/hb-aat-layout-morx-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-open-file.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-stat-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/gsubgpos-context.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-head-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-cff1-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-free-pool.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../hb-ot-layout-common.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-unicode-emoji-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-map.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/AnchorMatrix.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-plan-var.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-buffer-verify.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-cff-common.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-open-type.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-meta.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-ot-layout-common.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-khmer.cc [] []
/work/build/../../src/harfbuzz/src/graph/classdef-graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/Anchor.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-cff1.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-bit-set.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/path-builder.hh [] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-algs.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../hb-ot-var-common.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-face.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/MultipleSubstFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-geometry.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GDEF/GDEF.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/Common/CoverageFormat1.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-arabic-joining-list.hh [] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/LigatureSubstFormat1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-post-table-v2subset.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-buffer-serialize.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-map.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/RangeRecord.hh [] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairSet.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-layout-ankr-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-null.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-use-table.hh [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat2.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-layout.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-draw.cc ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/Common/Coverage.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-string-array.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/hb-shape-fuzzer.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-shaper.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-set.cc ['hb-set-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-accelerator.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-os2-unicode-ranges.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-dispatch.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/graph.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/SubstLookupSubTable.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-repacker.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkBasePos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/SingleSubstFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-ltag-table.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-paint.hh [] []
/work/build/../../src/harfbuzz/src/hb-aat-layout-common.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/COLR/../../../hb-paint-bounded.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-cff-common.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/AnchorFormat2.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-subset-cff2-to-cff1.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-set.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairValueRecord.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/sbix/sbix.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-machinery.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-indic.cc [] []
/work/build/../../src/harfbuzz/src/hb-subset-table.hh ['hb-subset-fuzzer'] []
/work/build/hb-ot-shaper-myanmar-machine.rl [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/CoverageFormat1.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-meta.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/svg/svg.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-os2-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-name-language-static.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-ot-hmtx-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shape-normalize.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-algs.hh [] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../hb-alloc-pool.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-open-type.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/name/../../hb-sanitize.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-cmap-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/SinglePosFormat2.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/Coverage.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-metrics.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-map.hh ['hb-repacker-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-map.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-atomic.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-sanitize.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-machinery.hh ['hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-post-table.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubstFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/../../../hb-ot-layout-gsubgpos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-tag.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../hb-subset-instancer-iup.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/CBDT.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/MarkMarkPos.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-thai.cc [] []
/work/build/../../src/harfbuzz/src/hb-iter.hh ['hb-set-fuzzer', 'hb-repacker-fuzzer', 'hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorFormat2.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-aat-layout.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/LigatureSubstFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-var-hvar-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-priority-queue.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-cff2-interp-cs.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-open-type.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/AlternateSubst.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-syllabic.cc [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/CoverageFormat2.hh ['hb-subset-fuzzer'] []
/work/build/hb-number-parser.rl ['hb-subset-fuzzer'] ['hb-subset-fuzzer']
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-ot-var-hvar-table.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-shaper-list.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../hb-open-type.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-buffer.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../hb-iter.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-name.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-use.cc [] []
/work/build/../../src/harfbuzz/src/hb-ot-shape.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/serialize.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPosFormat1.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-number.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/../../hb-ot-hhea-table.hh ['hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/LigatureArray.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-face-builder.cc ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/COLR/../../../hb-ot-layout-common.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/glyf/SubsetGlyph.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Color/COLR/../CPAL/CPAL.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/hb-buffer-deserialize-text-unicode.rl [] []
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/MarkLigPos.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../hb-meta.hh [] []
/work/build/../../src/harfbuzz/src/hb-font.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/PairPosFormat2.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/ReverseChainSingleSubst.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-ot-map.hh ['hb-draw-fuzzer', 'hb-shape-fuzzer', 'hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/OT/name/../../hb-open-type.hh ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-buffer.cc ['hb-shape-fuzzer'] []
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/AnchorMatrix.hh ['hb-subset-fuzzer'] []
/work/build/../../src/harfbuzz/src/hb-paint-bounded.hh [] []
/work/build/../../src/harfbuzz/src/hb-ot-shaper-arabic.cc [] []
/work/build/../../src/harfbuzz/src/hb-serialize.hh ['hb-repacker-fuzzer', 'hb-subset-fuzzer'] []

Directories in report

Directory
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/../../../
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/
/work/build/../../src/harfbuzz/src/OT/Color/COLR/../../../
/work/build/../../src/harfbuzz/src/graph/../
/work/build/../../src/harfbuzz/src/OT/Color/sbix/
/work/build/../../src/harfbuzz/src/
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GSUB/
/work/build/../../src/harfbuzz/src/OT/Color/CBDT/
/work/build/../../src/harfbuzz/src/OT/Layout/GPOS/../../../
/work/build/../../src/harfbuzz/src/OT/Color/COLR/../CPAL/
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/
/work/build/../../src/harfbuzz/src/OT/name/
/work/build/../../src/harfbuzz/src/OT/name/../../
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/glyf/
/work/build/../../src/harfbuzz/src/graph/
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GPOS/
/work/build/../../src/harfbuzz/src/OT/Color/svg/
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/Common/
/work/build/../../src/harfbuzz/src/OT/glyf/../../
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../OT/Layout/Common/
/work/build/../../src/harfbuzz/src/OT/Layout/Common/
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../OT/Layout/Common/
/work/build/../../src/harfbuzz/test/fuzzing/../api/
/work/build/../../src/harfbuzz/test/fuzzing/
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../
/work/build/../../src/harfbuzz/src/OT/Color/COLR/
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GDEF/../../../
/work/build/../../src/harfbuzz/src/OT/Color/CPAL/
/work/build/../../src/harfbuzz/src/OT/Var/VARC/
/work/build/../../src/harfbuzz/src/OT/glyf/
/work/build/../../src/harfbuzz/src/OT/Var/VARC/../../../OT/Layout/Common/
/work/build/
/work/build/../../src/harfbuzz/src/OT/Layout/GSUB/../../../
/work/build/../../src/harfbuzz/src/OT/Layout/GDEF/../../../
/work/build/../../src/harfbuzz/src/graph/../OT/Layout/GDEF/