From d0b657379bbe63602953412d6bc944b2a0f430eb Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Thu, 6 Aug 2009 18:34:47 -0400 Subject: [PATCH] [HB] Fix various XXX issues --- src/hb-open-type-private.hh | 13 ++++++++++--- src/hb-ot-layout-gdef-private.hh | 5 ++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/hb-open-type-private.hh b/src/hb-open-type-private.hh index 08dd075..494a99d 100644 --- a/src/hb-open-type-private.hh +++ b/src/hb-open-type-private.hh @@ -298,9 +298,16 @@ _hb_sanitize_edit (hb_sanitize_context_t *context, #define SANITIZE_OBJ(X) SANITIZE_MEM(&(X), sizeof (X)) #define SANITIZE_GET_SIZE() SANITIZE_SELF() && SANITIZE_MEM (this, this->get_size ()) -#define SANITIZE_MEM(B,L) HB_LIKELY (context->start <= CONST_CHARP(B) && CONST_CHARP(B) + (L) <= context->end) /* XXX overflow */ +/* TODO Optimize this if L is fixed (gcc magic) */ +#define SANITIZE_MEM(B,L) \ + HB_LIKELY (context->start <= CONST_CHARP(B) && \ + CONST_CHARP(B) < context->end && \ + context->end - CONST_CHARP(B) < (L)) -#define NEUTER(Var, Val) (SANITIZE_OBJ (Var) && _hb_sanitize_edit (context, CONST_CHARP(&(Var)), sizeof (Var)) && ((Var) = (Val), true)) +#define NEUTER(Var, Val) \ + (SANITIZE_OBJ (Var) && \ + _hb_sanitize_edit (context, CONST_CHARP(&(Var)), sizeof (Var)) && \ + ((Var) = (Val), true)) /* Template to sanitize an object. */ @@ -311,7 +318,7 @@ struct Sanitizer hb_sanitize_context_t context; bool sane; - /* XXX is_sane() stuff */ + /* TODO is_sane() stuff */ retry: #if HB_DEBUG diff --git a/src/hb-ot-layout-gdef-private.hh b/src/hb-ot-layout-gdef-private.hh index b1b034b..fcf85c2 100644 --- a/src/hb-ot-layout-gdef-private.hh +++ b/src/hb-ot-layout-gdef-private.hh @@ -99,7 +99,7 @@ struct CaretValueFormat1 private: inline int get_caret_value (hb_ot_layout_context_t *context, hb_codepoint_t glyph_id) const { - /* XXX vertical */ + /* TODO vertical */ return context->font->x_scale * coordinate / 0x10000; } @@ -141,7 +141,7 @@ struct CaretValueFormat3 inline int get_caret_value (hb_ot_layout_context_t *context, hb_codepoint_t glyph_id) const { - /* XXX vertical */ + /* TODO vertical */ return context->font->x_scale * coordinate / 0x10000 + ((this+deviceTable).get_delta (context->font->x_ppem) << 6); } @@ -163,7 +163,6 @@ ASSERT_SIZE (CaretValueFormat3, 6); struct CaretValue { - /* XXX we need access to a load-contour-point vfunc here */ int get_caret_value (hb_ot_layout_context_t *context, hb_codepoint_t glyph_id) const { switch (u.format) { -- 2.7.4