From 2e25d8f49181ab1d7fda520ae6587d293a982acf Mon Sep 17 00:00:00 2001 From: prrace Date: Fri, 27 Jul 2018 13:58:27 -0700 Subject: [PATCH] Fix unlikely leaks --- src/hb-ft.cc | 4 +++- src/hb-ot-shape.cc | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/hb-ft.cc b/src/hb-ft.cc index 6670d9a6..1026d682 100644 --- a/src/hb-ft.cc +++ b/src/hb-ft.cc @@ -496,8 +496,10 @@ reference_table (hb_face_t *face HB_UNUSED, hb_tag_t tag, void *user_data) return nullptr; error = FT_Load_Sfnt_Table (ft_face, tag, 0, buffer, &length); - if (error) + if (error) { + free ((void*)buffer); return nullptr; + } return hb_blob_create ((const char *) buffer, length, HB_MEMORY_MODE_WRITABLE, diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc index 6696ad88..70c9c63c 100644 --- a/src/hb-ot-shape.cc +++ b/src/hb-ot-shape.cc @@ -193,8 +193,10 @@ _hb_ot_shaper_shape_plan_data_create (hb_shape_plan_t *shape_plan, if (plan->shaper->data_create) { plan->data = plan->shaper->data_create (plan); - if (unlikely (!plan->data)) + if (unlikely (!plan->data)) { + free ((void*)plan); return nullptr; + } } return plan; -- GitLab