[benchmark-subset] Free cached face upon exist

For better valgrind output.
pull/4297/head
Behdad Esfahbod 2 years ago
parent 97d63e8d1d
commit 3a827123a1
  1. 15
      perf/benchmark-subset.cc

@ -116,6 +116,16 @@ static hb_face_t* preprocess_face(hb_face_t* face)
return new_face;
}
static hb_face_t *cached_face;
static void
free_cached_face (void)
{
hb_face_destroy (cached_face);
cached_face = nullptr;
}
/* benchmark for subsetting a font */
static void BM_subset (benchmark::State &state,
operation_t operation,
@ -126,7 +136,6 @@ static void BM_subset (benchmark::State &state,
hb_face_t *face = nullptr;
static hb_face_t *cached_face;
static const char *cached_font_path;
if (!cached_font_path || strcmp (cached_font_path, test_input.font_path))
@ -237,6 +246,10 @@ int main(int argc, char** argv)
{
benchmark::Initialize(&argc, argv);
#ifndef HB_NO_ATEXIT
atexit (free_cached_face);
#endif
if (argc > 1)
{
num_tests = (argc - 1) / 2;

Loading…
Cancel
Save