[pango] [HB] Fix apply_lookup() loop
- From: Behdad Esfahbod <behdad src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [pango] [HB] Fix apply_lookup() loop
- Date: Mon, 21 Sep 2009 17:47:10 +0000 (UTC)
commit d50615c838ef7b448021dacbe4daa49aa26ea388
Author: Behdad Esfahbod <behdad behdad org>
Date: Mon Sep 21 13:43:54 2009 -0400
[HB] Fix apply_lookup() loop
Part of Bug 595539 - Regressions in rendering certain Thai sequences with
OpenType font
pango/opentype/hb-ot-layout-gsubgpos-private.hh | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/pango/opentype/hb-ot-layout-gsubgpos-private.hh b/pango/opentype/hb-ot-layout-gsubgpos-private.hh
index e96e4e3..fd9c783 100644
--- a/pango/opentype/hb-ot-layout-gsubgpos-private.hh
+++ b/pango/opentype/hb-ot-layout-gsubgpos-private.hh
@@ -219,7 +219,7 @@ static inline bool apply_lookup (APPLY_ARG_DEF,
/* TODO We don't support lookupRecord arrays that are not increasing:
* Should be easy for in_place ones at least. */
- for (unsigned int i = 0; i < count; i++)
+ for (unsigned int i = 0; i < count; /* NOP */)
{
while (_hb_ot_layout_skip_mark (context->face, IN_CURINFO (), lookup_flag, NULL))
{
@@ -238,6 +238,7 @@ static inline bool apply_lookup (APPLY_ARG_DEF,
lookupRecord++;
lookupCount--;
+ /* Err, this is wrong if the lookup jumped over some glyphs */
i += buffer->in_pos - old_pos;
if (HB_UNLIKELY (buffer->in_pos == end))
return true;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]