Commit Graph

779 Commits

Author SHA1 Message Date
Behdad Esfahbod
e5546a4352 Watch for overflow in Array sanitize 2010-04-22 00:48:54 -04:00
Behdad Esfahbod
4f5f1c34dd Rename const_sub_array to sub_array since all consts are implicit now 2010-04-22 00:27:39 -04:00
Behdad Esfahbod
0795b784dd Cosmetic 2010-04-22 00:23:14 -04:00
Behdad Esfahbod
2d98d3bbaa Simplify Lookup sanitize 2010-04-22 00:19:30 -04:00
Behdad Esfahbod
c755cb3e3a Change header comment 2010-04-22 00:11:43 -04:00
Behdad Esfahbod
243d20e011 More cast simplification 2010-04-21 23:57:01 -04:00
Behdad Esfahbod
0dfcc13a46 Rename ConstCharP to CharP (overloaded now) 2010-04-21 23:41:26 -04:00
Behdad Esfahbod
62c0fd7573 Cleanup de-const-casting during sanitize 2010-04-21 23:30:48 -04:00
Behdad Esfahbod
dd15587056 Add more comments 2010-04-21 23:13:33 -04:00
Behdad Esfahbod
c85c362067 Add comment 2010-04-21 23:12:54 -04:00
Behdad Esfahbod
2467c669c2 Add comment 2010-04-21 23:11:45 -04:00
Behdad Esfahbod
29c3f5e1b6 Improve comment 2010-04-21 23:01:00 -04:00
Behdad Esfahbod
01c01618e9 Further simplify IntType struct defs 2010-04-21 22:49:56 -04:00
Behdad Esfahbod
2cb08458f6 Rename const_array() to array() (overloaded) 2010-04-21 22:37:31 -04:00
Behdad Esfahbod
2e2f43edf2 Remove ArrayAfter, use StructAfter in place 2010-04-21 22:30:36 -04:00
Behdad Esfahbod
e961c86c57 Convert NEXT() and ARRAY_AFTER() macros to templates 2010-04-21 15:56:11 -04:00
Behdad Esfahbod
198facdc55 Use templates for const char * casts 2010-04-21 13:35:36 -04:00
Behdad Esfahbod
1922ffe701 Const correctness 2010-04-21 04:52:11 -04:00
Behdad Esfahbod
e032ed9f75 Use templates for defining int typess 2010-04-21 04:51:55 -04:00
Behdad Esfahbod
2c9fd2adce Remove unused macro 2010-04-21 02:15:39 -04:00
Behdad Esfahbod
7a52f28117 Rename macros 2010-04-21 02:14:44 -04:00
Behdad Esfahbod
ffff7dc44c Minor 2010-04-21 02:13:55 -04:00
Behdad Esfahbod
f60f2166c4 Move macros around 2010-04-21 02:12:45 -04:00
Behdad Esfahbod
649a4344ca Remove unused macros 2010-04-21 02:11:59 -04:00
Behdad Esfahbod
eba8b4f644 GNOME Bug 613015 - [HB] Does not sanitize Device tables referenced from ValueRecords 2010-04-21 02:04:02 -04:00
Behdad Esfahbod
673a4efcbc WIP 2010-04-21 02:02:57 -04:00
Behdad Esfahbod
40d73bc68d Improve comments 2010-04-21 01:55:20 -04:00
Behdad Esfahbod
394bad41a7 Remove stale TODO item 2010-04-21 01:55:17 -04:00
Behdad Esfahbod
9d3677899f Use a function template instead of struct template for Null 2010-04-21 01:55:12 -04:00
Behdad Esfahbod
ffd321afd9 Simplify Tag struct 2010-04-21 01:55:09 -04:00
Behdad Esfahbod
00e23fcc6f Cosmetic 2010-04-21 01:55:03 -04:00
Behdad Esfahbod
a87072db5d Fix Class operator return type 2010-04-21 01:54:57 -04:00
Behdad Esfahbod
f9b3772798 Add couple consts to operators 2010-04-21 01:54:53 -04:00
Behdad Esfahbod
53d237ec63 Remove ASSERT_SIZE_DATA 2010-04-21 01:54:49 -04:00
Behdad Esfahbod
06558d2a74 Round instead of trunc 2010-04-21 01:50:15 -04:00
Behdad Esfahbod
0e206de986 Fix warnings 2010-04-21 01:48:41 -04:00
Behdad Esfahbod
d5943407a4 Fix debug build 2010-04-21 01:42:11 -04:00
Behdad Esfahbod
12b27ed91d Fix leak when duplicating blob 2010-04-21 01:41:53 -04:00
Behdad Esfahbod
4b8487d83e Fix the mystery bug!
A couple bugs joined forces to exhibit the mystery behavior of
crashes / infinite loops on OS X / wrong kerning / invalid memory
access.  Pooh!

The bugs were involved:

  - Wrong pointer math with ValueRecord in PairPosFormat1

  - Fallout from avoiding flex arrays, code not correctly updated
    to remove sizeof() usage.

We strictly never use sizeof() directly now.  And the PairPos code
is cleaned up.  Should fix them all.  Bugs are:

  Bug 605655 - Pango 1.26.2 introduces kerning bug
  Bug 611229 - Pango reads from uninitialized memory
  Bug 593240 - (pangoosx) Crash / infinite loop with Mac OS X

We were also doing wrong math converting Device adjustments to
hb_position_t.  Fallout from FreeType days.  Should shift 16, not
6.  Fixed that too.

There's still another bug: we don't sanitize Device records
referenced from value records.  Fixing that also.
2010-04-21 01:41:29 -04:00
Behdad Esfahbod
9b39755d10 Typo 2010-04-15 14:00:25 -04:00
Behdad Esfahbod
f85ec1c7da Cosmetic 2010-03-10 04:14:40 -05:00
Behdad Esfahbod
e48ed72230 [ft] Check stream->read instead of stream->base
The former is more robust.  See discussion on freetype-devel.
2010-03-01 22:33:45 -05:00
Behdad Esfahbod
917c227500 Make blob unlocking 64bit-safe
GNOME Bug 604128 - Applications crash when displaying Hebrew characters
2010-02-23 16:47:51 -05:00
Behdad Esfahbod
ecd2e996d2 Improve the alignment for NullPool 2010-02-23 02:42:00 -05:00
Behdad Esfahbod
bc7830e425 Use __attribute__((unused)) only with gcc 4 and later
See discussion at:
https://bugzilla.gnome.org/show_bug.cgi?id=610183
2010-02-17 15:14:57 -05:00
Behdad Esfahbod
555d11273e [GDEF] Fix bug in building synthetic GDEF 2010-01-26 12:58:59 -05:00
Behdad Esfahbod
70834d89c3 [TODO] Add kern/GPOS interaction 2010-01-26 12:17:37 -05:00
Behdad Esfahbod
cd11a98fa1 Fix compile with older FreeType 2009-12-20 23:05:02 +01:00
Behdad Esfahbod
7f7448a354 Indent 2009-12-20 21:42:14 +01:00
Behdad Esfahbod
e70f45eb52 Revert "Fallback to 'kern' if no GPOS applied"
This reverts commit d740c8f78b.

The change is wrong.  If there is a GPOS table, we should not use 'kern'.
2009-12-20 21:26:24 +01:00