[HarfBuzz] harfbuzz: Branch 'master' - 2 commits

Behdad Esfahbod behdad at kemper.freedesktop.org
Sat Jun 22 08:06:01 PDT 2013


 src/hb-ot-layout.cc |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit f5da11e0fa5adf8f782883dc5c30d8faaafc9c27
Merge: 79d1007 89312b7
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Sat Jun 22 08:04:05 2013 -0700

    Merge pull request #3 from LogosBible/master
    
    Destroy lookups before blobs.

commit 89312b7417c0198a0635ca6b7e8ea11f6af2a4f8
Author: Bradley Grainger <bgrainger at gmail.com>
Date:   Fri Jun 21 15:02:18 2013 -0700

    Destroy lookups before blobs.
    
    'layout->gsub' may depend on data owned by 'layout->gsub_blob', so it must
    be deinitialized before the blob is destroyed.

diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc
index 355f51c..37903e5 100644
--- a/src/hb-ot-layout.cc
+++ b/src/hb-ot-layout.cc
@@ -82,10 +82,6 @@ _hb_ot_layout_create (hb_face_t *face)
 void
 _hb_ot_layout_destroy (hb_ot_layout_t *layout)
 {
-  hb_blob_destroy (layout->gdef_blob);
-  hb_blob_destroy (layout->gsub_blob);
-  hb_blob_destroy (layout->gpos_blob);
-
   for (unsigned int i = 0; i < layout->gsub_lookup_count; i++)
     layout->gsub_accels[i].fini (layout->gsub->get_lookup (i));
   for (unsigned int i = 0; i < layout->gpos_lookup_count; i++)
@@ -94,6 +90,10 @@ _hb_ot_layout_destroy (hb_ot_layout_t *layout)
   free (layout->gsub_accels);
   free (layout->gpos_accels);
 
+  hb_blob_destroy (layout->gdef_blob);
+  hb_blob_destroy (layout->gsub_blob);
+  hb_blob_destroy (layout->gpos_blob);
+
   free (layout);
 }
 



More information about the HarfBuzz mailing list