Coverage Report

Created: 2026-02-14 06:46

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/harfbuzz/src/hb-subset-table-var.cc
Line
Count
Source
1
#include "hb-subset-table.hh"
2
3
#include "hb-ot-var-hvar-table.hh"
4
#include "hb-ot-var-gvar-table.hh"
5
#include "hb-ot-var-fvar-table.hh"
6
#include "hb-ot-var-avar-table.hh"
7
#include "hb-ot-var-cvar-table.hh"
8
#include "hb-ot-var-mvar-table.hh"
9
10
bool _hb_subset_table_var   (hb_subset_plan_t *plan, hb_vector_t<char> &buf, hb_tag_t tag, bool *success)
11
249k
{
12
249k
#ifndef HB_NO_VAR
13
249k
  switch (tag)
14
249k
  {
15
1.88k
  case HB_TAG('H','V','A','R'): *success = _hb_subset_table<const OT::HVAR> (plan, buf); return true;
16
167
  case HB_TAG('V','V','A','R'): *success = _hb_subset_table<const OT::VVAR> (plan, buf); return true;
17
1.34k
  case HB_TAG('g','v','a','r'): *success = _hb_subset_table<const OT::gvar> (plan, buf); return true;
18
3.80k
  case HB_TAG('f','v','a','r'):
19
3.80k
    if (plan->user_axes_location.is_empty ())
20
2.88k
      *success = _hb_subset_table_passthrough (plan, tag);
21
920
    else
22
920
      *success = _hb_subset_table<const OT::fvar> (plan, buf);
23
3.80k
    return true;
24
974
  case HB_TAG('a','v','a','r'):
25
974
    if (plan->user_axes_location.is_empty ())
26
937
      *success = _hb_subset_table_passthrough (plan, tag);
27
37
    else
28
37
      *success = _hb_subset_table<const OT::avar> (plan, buf);
29
974
    return true;
30
18
  case HB_TAG('c','v','a','r'):
31
18
    if (plan->user_axes_location.is_empty ())
32
16
      *success = _hb_subset_table_passthrough (plan, tag);
33
2
    else
34
2
      *success = _hb_subset_table<const OT::cvar> (plan, buf);
35
18
    return true;
36
1.07k
  case HB_TAG('M','V','A','R'):
37
1.07k
    if (plan->user_axes_location.is_empty ())
38
1.07k
      *success = _hb_subset_table_passthrough (plan, tag);
39
1
    else
40
1
      *success = _hb_subset_table<const OT::MVAR> (plan, buf);
41
1.07k
    return true;
42
249k
  }
43
240k
#endif
44
240k
  return false;
45
249k
}