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 119 35.6%
gold [1:9] 19 5.68%
yellow [10:29] 45 13.4%
greenyellow [30:49] 8 2.39%
lawngreen 50+ 143 42.8%
All colors 334 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
42 228 hb_vector_size_t hb_vector_size_t ::process<$_9>($_9 const&, hb_vector_size_t const&) const call site: 00228 hb_set_union
13 285 void hb_object_fini (hb_set_t*) call site: 00285 pthread_mutex_lock
12 299 NullHelper ::get_null() call site: 00299 hb_free
6 214 hb_vector_t ::fini() call site: 00214
4 13 hb_sparseset_t ::hb_sparseset_t() call site: 00013
4 80 hb_free call site: 00080 hb_malloc
4 111 hb_bit_set_t::page_for(unsigned int, bool) call site: 00111
4 128 hb_sparseset_t ::intersect(hb_sparseset_t const&) call site: 00128
4 202 hb_bit_set_t::process_(hb_vector_size_t (*)(hb_vector_size_t const&, hb_vector_size_t const&), bool, bool, hb_bit_set_t const&) call site: 00202
3 169 hb_array_t ::__item__() const call site: 00169
3 179 hb_bit_set_t::compact(hb_vector_t &, unsigned int) call site: 00179
3 189 hb_bit_set_t::compact_pages(hb_vector_t const&) call site: 00189

Runtime coverage analysis

Covered functions
173
Functions that are reachable but not covered
126
Reachable functions
474
Percentage of reachable functions covered
73.42%
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 2
../../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] 28 0.53%
yellow [10:29] 50 0.95%
greenyellow [30:49] 11 0.21%
lawngreen 50+ 2903 55.4%
All colors 5231 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 3775 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: 03775 _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 4011 hb_array_t ::qsort(int (*)(void const*, void const*)) call site: 04011 _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 3150 CrapHelper >::get_crap() call site: 03150 _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 1699 hb_serialize_context_t::check_success(bool, hb_serialize_error_t) call site: 01699 _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 3215 OT::ArrayOf , OT::NumType >::operator[](int) call site: 03215 _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 4186 graph::graph_t::vertex_t::is_shared() const call site: 04186 _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 4135 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: 04135 _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 2180 hb_filter_iter_t ::item_t>, bool (hb_hashmap_t ::item_t::*)() const, $_19 const&, (void*)0>::__next__() call site: 02180 _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 3010 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: 03010 _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 1848 hb_serialize_context_t::pop_pack(bool) call site: 01848 _ZN12hb_hashmap_tIPKN22hb_serialize_context_t8object_tEjLb0EE6item_t13default_valueILb0ETnPN12hb_enable_ifIXeqT_Lb0EEvE4typeELPv0EEERKjv
34 2833 graph::PairPosFormat2::split_subtables(graph::gsubgpos_graph_context_t&, unsigned int) call site: 02833
33 3380 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: 03380 _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
1749
Functions that are reachable but not covered
1570
Reachable functions
5376
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 2
../../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] 49 0.78%
greenyellow [30:49] 12 0.19%
lawngreen 50+ 4306 69.0%
All colors 6234 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 425 hb_ot_face_t::init0(hb_face_t*) call site: 00425
35 1404 hb_lazy_loader_t ::get_unconst() const call site: 01404 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 1347 CrapHelper ::get_crap() call site: 01347 hb_draw_funcs_set_line_to_func
25 5718 hb_atomic_t ::operator hb_face_t::plan_node_t* () const call site: 05718 hb_shape_plan_destroy
18 32 void hb_object_trace (hb_blob_t const*, char const*) call site: 00032 hb_malloc
18 6127 hb_lazy_loader_t , hb_face_t, 30u, AAT::morx_accelerator_t>::do_destroy(AAT::morx_accelerator_t*) call site: 06127 hb_free
15 1463 hb_draw_funcs_t::start_path(void*, hb_draw_state_t&) call site: 01463
15 2115 hb_bit_page_t::elt(unsigned int) call site: 02115
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
1011
Reachable functions
7229
Percentage of reachable functions covered
86.01%
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 2
../../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 3
../../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 3174 20.6%
gold [1:9] 285 1.85%
yellow [10:29] 211 1.37%
greenyellow [30:49] 96 0.62%
lawngreen 50+ 11626 75.5%
All colors 15392 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 4092 hb_ot_tags_from_complex_language(char const*, char const*, unsigned int*, unsigned int*) call site: 04092 strncmp
114 14927 hb_ot_metrics_get_variation call site: 14927 hb_ot_metrics_get_variation
42 15090 hb_lazy_loader_t , hb_face_t, 7u, OT::post_accelerator_t>::get() const call site: 15090 hb_ot_metrics_get_variation
40 428 hb_ot_face_t::init0(hb_face_t*) call site: 00428
40 11882 hb_buffer_t::verify(hb_buffer_t*, hb_font_t*, hb_feature_t const*, unsigned int, char const* const*) call site: 11882 hb_shape_full
34 1271 OT::fvar::get_axis_infos(unsigned int, unsigned int*, hb_ot_var_axis_info_t*) const call site: 01271 hb_font_destroy
34 11546 hb_lazy_loader_t ::get_unconst() const call site: 11546 hypotf
31 11507 CrapHelper ::get_crap() call site: 11507 hb_draw_funcs_set_line_to_func
28 13958 OT::OffsetTo , void, true>::operator()(void const*) const call site: 13958 _ZNK4$_20clIRZNK2OT8LigGlyph14get_lig_caretsEP9hb_font_t14hb_direction_tjRKNS1_18ItemVariationStoreEjPjPiEUlRKNS1_10CaretValueEE_SD_EEDTcl4implclsr3stdE7forwardIT_Efp_Eclsr3stdE7forwardIT0_Efp0_Ecv11hb_priorityILj16EE_EEEOSG_OSH_
26 3193 OT::Device::sanitize(hb_sanitize_context_t*) const call site: 03193 _ZN21hb_sanitize_context_t8dispatchIN2OT6DeviceEJEEEDTcl9_dispatchfp_cv11hb_priorityILj16EE_Espclsr3stdE7forwardIT0_Efp0_EEERKT_DpOS5_
25 14900 NullHelper ::get_null() call site: 14900 hb_ot_metrics_get_variation
23 13896 hb_iter_t , void, true> const>, OT::OffsetTo , void, true> const&>::operator+() const call site: 13896 _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_

Runtime coverage analysis

Covered functions
11803
Functions that are reachable but not covered
1440
Reachable functions
16482
Percentage of reachable functions covered
91.26%
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 3
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 7
../../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 426
../../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 427
../../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-shape-plan.cc 10
../../src/harfbuzz/src/hb-shape-plan.hh 3
../../src/harfbuzz/src/hb-ot-shape.hh 5
../../src/harfbuzz/src/hb-ot-map.hh 21
../../src/harfbuzz/src/hb-aat-map.hh 7
../../src/harfbuzz/src/hb-ot-cmap-table.hh 53
../../src/harfbuzz/src/OT/glyf/../../hb-ot-hmtx-table.hh 4
../../src/harfbuzz/src/hb-ot-post-table.hh 7
../../src/harfbuzz/src/OT/name/name.hh 19
../../src/harfbuzz/src/hb-ot-meta-table.hh 11
../../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 41
../../src/harfbuzz/src/hb-aat-layout-common.hh 254
../../src/harfbuzz/src/hb-bit-set.hh 34
../../src/harfbuzz/src/hb-aat-layout-kerx-table.hh 118
../../src/harfbuzz/src/OT/Layout/GDEF/GDEF.hh 40
../../src/harfbuzz/src/OT/Layout/GSUB/GSUB.hh 4
../../src/harfbuzz/src/OT/Layout/GPOS/../../../hb-ot-layout-gsubgpos.hh 518
../../src/harfbuzz/src/OT/Layout/GPOS/GPOS.hh 8
../../src/harfbuzz/src/hb-aat-layout-morx-table.hh 149
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-machinery.hh 87
../../src/harfbuzz/src/OT/Color/COLR/COLR.hh 73
../../src/harfbuzz/src/hb-paint-extents.hh 11
../../src/harfbuzz/src/OT/Color/COLR/../../../hb-paint-bounded.hh 1
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-blob.hh 37
../../src/harfbuzz/src/OT/Color/CBDT/CBDT.hh 23
../../src/harfbuzz/src/OT/Color/sbix/sbix.hh 12
../../src/harfbuzz/src/OT/Color/svg/svg.hh 13
../../src/harfbuzz/src/OT/Color/CBDT/../../../hb-map.hh 1
../../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-ot-layout.cc 42
../../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/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/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-ot-map.cc 6
../../src/harfbuzz/src/hb-ot-tag.cc 11
../../src/harfbuzz/src/hb-ot-tag-table.hh 1
../../src/harfbuzz/src/hb-aat-layout.cc 18
../../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-bit-page.hh 20
../../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-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-os2-table.hh 10
../../src/harfbuzz/src/hb-ot-shaper-arabic-pua.hh 3
../../src/harfbuzz/src/hb-ot-color.cc 12
../../src/harfbuzz/src/OT/Color/COLR/../CPAL/CPAL.hh 13
../../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-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-name.cc 7
../../src/harfbuzz/src/OT/name/../../hb-machinery.hh 10
../../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

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 11950 26.2%
gold [1:9] 479 1.05%
yellow [10:29] 508 1.11%
greenyellow [30:49] 371 0.81%
lawngreen 50+ 32238 70.7%
All colors 45546 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 18927 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: 18927
126 19543 hb_hashmap_t , false>::alloc(unsigned int) call site: 19543
116 18809 CFF::biased_subrs_t > >::operator[](unsigned int) const call site: 18809
77 39745 CrapHelper >::get_crap() call site: 39745 _ZN2OT8CFFIndexINS_7NumTypeILb1EtLj2EEEE9serializeI11hb_vector_tI10hb_array_tIKhELb0EETnPN12hb_enable_ifIXsr14hb_is_iterableIT_EE5valueEvE4typeELPv0EEEbP22hb_serialize_context_tRKSB_PKjj
70 19805 _get_table_tags(hb_subset_plan_t const*, unsigned int, unsigned int*, unsigned int*) call site: 19805 _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 25897 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: 25897 _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 45211 hb_table_lazy_loader_t ::convert(hb_blob_t const*) call site: 45211 hb_blob_copy_writable_or_fail
60 39438 cff2_private_dict_op_serializer_t::serialize(hb_serialize_context_t*, CFF::op_str_t const&, unsigned int) const call site: 39438 newlocale
57 21232 hb_vector_t const*, false>::resize_full(int, bool, bool) call site: 21232 _ZNK3$_44implIiTnPN12hb_enable_ifIXaasr3std11is_integralIT_EE5valuelestS2_Lm4EEvE4typeELPv0EEEN10_hb_head_tIjJDTmlcvjfp_Lj2654435761EEEE4typeERKS2_11hb_priorityILj1EE
57 39281 hb_vector_t , false>::resize(int) call site: 39281
54 21432 hb_vector_t , false>::resize_full(int, bool, bool) call site: 21432 _ZN11hb_vector_tIhLb0EE10copy_arrayIhTnPN12hb_enable_ifIXsr3std21is_trivially_copyableIT_EE5valueEvE4typeELPv0EEEv10hb_array_tIKhE
52 25961 hb_vector_t graph::actuate_subtable_split (graph::MarkBasePosFormat1::split_context_t&, hb_vector_t const&) call site: 25961 _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
22697
Functions that are reachable but not covered
6584
Reachable functions
48555
Percentage of reachable functions covered
86.44%
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 6
../../src/harfbuzz/test/fuzzing/hb-fuzzer.hh 7
../../src/harfbuzz/src/hb-blob.cc 15
../../src/harfbuzz/src/hb-null.hh 1012
../../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 2468
../../src/harfbuzz/src/hb-vector.hh 1601
../../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 1055
../../src/harfbuzz/src/hb-iter.hh 8915
../../src/harfbuzz/src/hb-meta.hh 1069
../../src/harfbuzz/src/hb-set.cc 12
../../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 3
../../src/harfbuzz/src/hb-bit-page.hh 44
../../src/harfbuzz/src/hb-subset-input.cc 12
../../src/harfbuzz/src/hb-map.hh 737
../../src/harfbuzz/src/hb-subset-input.hh 9
../../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-ot-var.cc 5
../../src/harfbuzz/src/hb-ot-var-fvar-table.hh 26
../../src/harfbuzz/src/hb-subset-instancer-solver.hh 10
../../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-accelerator.hh 5
../../src/harfbuzz/src/hb-subset-plan-var.cc 8
../../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-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=['hb_vector_size_t hb_vector_size_t::process<$_9>($_9 const&, hb_vector_size_t const&) const', 'void hb_object_fini(hb_set_t*)', 'NullHelper::get_null()', 'hb_vector_t::fini()', 'hb_sparseset_t::hb_sparseset_t()', 'hb_free', 'hb_bit_set_t::page_for(unsigned int, bool)', 'hb_sparseset_t::intersect(hb_sparseset_t const&)', 'hb_bit_set_t::process_(hb_vector_size_t (*)(hb_vector_size_t const&, hb_vector_size_t const&), bool, bool, hb_bit_set_t const&)', 'hb_array_t::__item__() const']

../../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*)', 'OT::fvar::get_axis_infos(unsigned int, unsigned int*, hb_ot_var_axis_info_t*) 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']

../../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 const*, false>::resize_full(int, bool, bool)', 'hb_vector_t, false>::resize(int)']

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

Directories in report

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