Bug#750785: Slowness with context and xetex
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Attached.
On 14-08-12 05:31 PM, Hilmar Preusse wrote:
> On 12.08.14 Behdad Esfahbod (behdad@behdad.org) wrote:
>
> Hi Behdad,
>
>> https://github.com/behdad/harfbuzz/commit/8d5eebc0c6ada01128c6ee384340efdbef7ba29d
>>
>
>>
I'm failing to pull a raw unified diff out of github. Could you post
> it here?
>
> Tnanks, Hilmar
>
- --
behdad
http://behdad.org/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iEYEARECAAYFAlPqjK4ACgkQn+4E5dNTERUkowCfV1bDY1KIl1+dhhGq9WPstAnf
piEAoImHbpGBgETHMK7wRUm5/c/QVL03
=M1g2
-----END PGP SIGNATURE-----
commit 8d5eebc0c6ada01128c6ee384340efdbef7ba29d
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Tue Aug 12 16:50:22 2014 -0400
[shape-plan] Fix shape-plan caching with more than one requested shaper
Wasn't breaking out of loop, ouch!
http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1246370.html
diff --git a/src/hb-shape-plan.cc b/src/hb-shape-plan.cc
index fa0db6a..23beda1 100644
--- a/src/hb-shape-plan.cc
+++ b/src/hb-shape-plan.cc
@@ -420,17 +420,20 @@ hb_shape_plan_create_cached (hb_face_t *face,
if (shaper_list) {
/* Choose shaper. Adapted from hb_shape_plan_plan(). */
#define HB_SHAPER_PLAN(shaper) \
- HB_STMT_START { \
+ { \
if (hb_##shaper##_shaper_face_data_ensure (face)) \
+ { \
proposal.shaper_func = _hb_##shaper##_shape; \
- } HB_STMT_END
+ break; \
+ } \
+ }
for (const char * const *shaper_item = shaper_list; *shaper_item; shaper_item++)
if (0)
;
#define HB_SHAPER_IMPLEMENT(shaper) \
else if (0 == strcmp (*shaper_item, #shaper)) \
- HB_SHAPER_PLAN (shaper);
+ HB_SHAPER_PLAN (shaper)
#include "hb-shaper-list.hh"
#undef HB_SHAPER_IMPLEMENT
Reply to: