Behdad Esfahbod [Thu, 22 Apr 2010 15:06:30 +0000 (11:06 -0400)]
Don't sanitize raw table data
That part is performed by individual table sanitize.
Behdad Esfahbod [Thu, 22 Apr 2010 15:15:46 +0000 (11:15 -0400)]
Add coment
Behdad Esfahbod [Thu, 22 Apr 2010 14:54:26 +0000 (10:54 -0400)]
Remove unnecessary casts
Behdad Esfahbod [Thu, 22 Apr 2010 14:47:12 +0000 (10:47 -0400)]
Avoid overflow in TableDirectory sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 14:43:30 +0000 (10:43 -0400)]
Make casts more explicit
Behdad Esfahbod [Thu, 22 Apr 2010 14:26:35 +0000 (10:26 -0400)]
Make sure semicolon is expected after DEFINE_NULL_DATA()
Behdad Esfahbod [Thu, 22 Apr 2010 05:01:35 +0000 (01:01 -0400)]
Improve Subst/Pos SubTable access and sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 04:58:49 +0000 (00:58 -0400)]
Simplify Extension offset now that our int types have no alignment
Behdad Esfahbod [Thu, 22 Apr 2010 04:49:16 +0000 (00:49 -0400)]
Sanitize shallow in Lookup since the generic SubLookup has no methods
Behdad Esfahbod [Thu, 22 Apr 2010 04:45:42 +0000 (00:45 -0400)]
Watch for overflow in Array sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 04:27:39 +0000 (00:27 -0400)]
Rename const_sub_array to sub_array since all consts are implicit now
Behdad Esfahbod [Thu, 22 Apr 2010 04:23:14 +0000 (00:23 -0400)]
Cosmetic
Behdad Esfahbod [Thu, 22 Apr 2010 04:19:30 +0000 (00:19 -0400)]
Simplify Lookup sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 04:11:43 +0000 (00:11 -0400)]
Change header comment
Behdad Esfahbod [Thu, 22 Apr 2010 03:57:01 +0000 (23:57 -0400)]
More cast simplification
Behdad Esfahbod [Thu, 22 Apr 2010 03:41:26 +0000 (23:41 -0400)]
Rename ConstCharP to CharP (overloaded now)
Behdad Esfahbod [Thu, 22 Apr 2010 03:30:48 +0000 (23:30 -0400)]
Cleanup de-const-casting during sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 03:13:33 +0000 (23:13 -0400)]
Add more comments
Behdad Esfahbod [Thu, 22 Apr 2010 03:12:54 +0000 (23:12 -0400)]
Add comment
Behdad Esfahbod [Thu, 22 Apr 2010 03:11:45 +0000 (23:11 -0400)]
Add comment
Behdad Esfahbod [Thu, 22 Apr 2010 03:01:00 +0000 (23:01 -0400)]
Improve comment
Behdad Esfahbod [Thu, 22 Apr 2010 02:49:56 +0000 (22:49 -0400)]
Further simplify IntType struct defs
Behdad Esfahbod [Thu, 22 Apr 2010 02:37:31 +0000 (22:37 -0400)]
Rename const_array() to array() (overloaded)
Behdad Esfahbod [Thu, 22 Apr 2010 02:30:36 +0000 (22:30 -0400)]
Remove ArrayAfter, use StructAfter in place
Behdad Esfahbod [Wed, 21 Apr 2010 19:56:11 +0000 (15:56 -0400)]
Convert NEXT() and ARRAY_AFTER() macros to templates
Behdad Esfahbod [Wed, 21 Apr 2010 17:35:36 +0000 (13:35 -0400)]
Use templates for const char * casts
Behdad Esfahbod [Wed, 21 Apr 2010 08:19:51 +0000 (04:19 -0400)]
Const correctness
Behdad Esfahbod [Wed, 21 Apr 2010 07:11:46 +0000 (03:11 -0400)]
Use templates for defining int typess
Behdad Esfahbod [Wed, 21 Apr 2010 06:15:39 +0000 (02:15 -0400)]
Remove unused macro
Behdad Esfahbod [Wed, 21 Apr 2010 06:14:44 +0000 (02:14 -0400)]
Rename macros
Behdad Esfahbod [Wed, 21 Apr 2010 06:13:55 +0000 (02:13 -0400)]
Minor
Behdad Esfahbod [Wed, 21 Apr 2010 06:12:45 +0000 (02:12 -0400)]
Move macros around
Behdad Esfahbod [Wed, 21 Apr 2010 06:11:59 +0000 (02:11 -0400)]
Remove unused macros
Behdad Esfahbod [Mon, 29 Mar 2010 04:04:12 +0000 (00:04 -0400)]
GNOME Bug 613015 - [HB] Does not sanitize Device tables referenced from ValueRecords
Behdad Esfahbod [Wed, 21 Apr 2010 06:02:57 +0000 (02:02 -0400)]
WIP
Behdad Esfahbod [Wed, 21 Apr 2010 04:49:40 +0000 (00:49 -0400)]
Improve comments
Behdad Esfahbod [Wed, 21 Apr 2010 04:40:50 +0000 (00:40 -0400)]
Remove stale TODO item
Behdad Esfahbod [Wed, 21 Apr 2010 04:32:47 +0000 (00:32 -0400)]
Use a function template instead of struct template for Null
Behdad Esfahbod [Wed, 21 Apr 2010 04:14:12 +0000 (00:14 -0400)]
Simplify Tag struct
Behdad Esfahbod [Wed, 21 Apr 2010 03:50:45 +0000 (23:50 -0400)]
Cosmetic
Behdad Esfahbod [Tue, 20 Apr 2010 19:52:47 +0000 (15:52 -0400)]
Fix Class operator return type
Behdad Esfahbod [Tue, 20 Apr 2010 19:51:53 +0000 (15:51 -0400)]
Add couple consts to operators
Behdad Esfahbod [Tue, 20 Apr 2010 19:25:27 +0000 (15:25 -0400)]
Remove ASSERT_SIZE_DATA
Behdad Esfahbod [Mon, 19 Apr 2010 06:34:10 +0000 (02:34 -0400)]
Round instead of trunc
Behdad Esfahbod [Mon, 19 Apr 2010 06:29:04 +0000 (02:29 -0400)]
Fix warnings
Behdad Esfahbod [Mon, 19 Apr 2010 06:27:56 +0000 (02:27 -0400)]
Fix debug build
Behdad Esfahbod [Sat, 27 Mar 2010 21:00:19 +0000 (17:00 -0400)]
Fix leak when duplicating blob
Behdad Esfahbod [Tue, 16 Mar 2010 07:46:17 +0000 (03:46 -0400)]
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.
Behdad Esfahbod [Thu, 15 Apr 2010 18:00:25 +0000 (14:00 -0400)]
Typo
Behdad Esfahbod [Wed, 10 Mar 2010 09:14:40 +0000 (04:14 -0500)]
Cosmetic
Behdad Esfahbod [Tue, 2 Mar 2010 03:33:45 +0000 (22:33 -0500)]
[ft] Check stream->read instead of stream->base
The former is more robust. See discussion on freetype-devel.
Behdad Esfahbod [Tue, 23 Feb 2010 21:47:51 +0000 (16:47 -0500)]
Make blob unlocking 64bit-safe
GNOME Bug 604128 - Applications crash when displaying Hebrew characters
Behdad Esfahbod [Tue, 23 Feb 2010 07:42:00 +0000 (02:42 -0500)]
Improve the alignment for NullPool
Behdad Esfahbod [Wed, 17 Feb 2010 20:14:57 +0000 (15:14 -0500)]
Use __attribute__((unused)) only with gcc 4 and later
See discussion at:
https://bugzilla.gnome.org/show_bug.cgi?id=610183
Behdad Esfahbod [Tue, 26 Jan 2010 17:58:59 +0000 (12:58 -0500)]
[GDEF] Fix bug in building synthetic GDEF
Behdad Esfahbod [Tue, 26 Jan 2010 17:17:37 +0000 (12:17 -0500)]
[TODO] Add kern/GPOS interaction
Behdad Esfahbod [Sun, 20 Dec 2009 22:05:02 +0000 (23:05 +0100)]
Fix compile with older FreeType
Behdad Esfahbod [Sun, 20 Dec 2009 20:42:14 +0000 (21:42 +0100)]
Indent
Behdad Esfahbod [Sun, 20 Dec 2009 20:26:24 +0000 (21:26 +0100)]
Revert "Fallback to 'kern' if no GPOS applied"
This reverts commit
d740c8f78bcbe80a8bcd8a9468830a406da37cc0.
The change is wrong. If there is a GPOS table, we should not use 'kern'.
Behdad Esfahbod [Sun, 20 Dec 2009 20:23:56 +0000 (21:23 +0100)]
Fallback to 'kern' if no GPOS applied
Behdad Esfahbod [Sun, 20 Dec 2009 20:03:11 +0000 (21:03 +0100)]
Remove glibism!
Behdad Esfahbod [Sun, 20 Dec 2009 19:59:51 +0000 (20:59 +0100)]
Oops, add file.
Behdad Esfahbod [Sun, 20 Dec 2009 19:58:26 +0000 (20:58 +0100)]
Hook OpenType shaping up
Default features only for now.
Behdad Esfahbod [Sun, 20 Dec 2009 18:01:14 +0000 (19:01 +0100)]
Pass features down
Behdad Esfahbod [Sun, 20 Dec 2009 17:22:28 +0000 (18:22 +0100)]
Avoid overflow
Behdad Esfahbod [Sun, 20 Dec 2009 16:58:25 +0000 (17:58 +0100)]
Refactor hb_shape a bit
Behdad Esfahbod [Sun, 20 Dec 2009 16:24:05 +0000 (17:24 +0100)]
Add TrueType kern support
Behdad Esfahbod [Sun, 20 Dec 2009 15:29:17 +0000 (16:29 +0100)]
Direct unicode->get_mirroring directly
Behdad Esfahbod [Sun, 20 Dec 2009 15:28:01 +0000 (16:28 +0100)]
Do mirroring
Behdad Esfahbod [Sun, 20 Dec 2009 15:25:18 +0000 (16:25 +0100)]
Protect against NULL funcs
Behdad Esfahbod [Sun, 20 Dec 2009 14:29:16 +0000 (15:29 +0100)]
Add hb_unicode_get_*() functions
Behdad Esfahbod [Sun, 20 Dec 2009 13:56:25 +0000 (14:56 +0100)]
We'll have to link to libstdc++ if linking to ICU, so disable test for now
We have to get rid of the ICU in main lib. Still thinking about best way
to do it.
Behdad Esfahbod [Sun, 20 Dec 2009 13:50:42 +0000 (14:50 +0100)]
Explicitly track whether the buffer has positions
Behdad Esfahbod [Sun, 20 Dec 2009 12:58:50 +0000 (13:58 +0100)]
Add HB_DIRECTION_IS_FORWARD/BACKWARD
Behdad Esfahbod [Tue, 15 Dec 2009 09:07:40 +0000 (04:07 -0500)]
Make main.cc compile without glib
Behdad Esfahbod [Tue, 15 Dec 2009 08:53:45 +0000 (03:53 -0500)]
Distribute autogen.sh
Behdad Esfahbod [Fri, 20 Nov 2009 01:28:03 +0000 (20:28 -0500)]
Another C++ strictness fix
Pango Bug 602408 - Invalid C++ code breaks compile with Sun C++ Compiler
(Error: A union member cannot have a user-defined assignment operator)
According to the bug:
C++ Programming Language by Bjarne Stroustrup: Chapter 10.4.12 forbids
explicitly using of union members with constructors, destructors or assignment
operations.
So we use a set() method instead of the assignment operator. Ugly, but hey,
that's life.
Behdad Esfahbod [Fri, 20 Nov 2009 01:27:57 +0000 (20:27 -0500)]
Fix warning
Behdad Esfahbod [Wed, 18 Nov 2009 16:27:33 +0000 (11:27 -0500)]
Use autoconf FLEXIBLE_ARRAY_MEMBER when available
Behdad Esfahbod [Wed, 18 Nov 2009 14:47:44 +0000 (09:47 -0500)]
Add Mongolian variation selectors
Behdad Esfahbod [Wed, 11 Nov 2009 22:15:03 +0000 (17:15 -0500)]
Fix sanitize
Behdad Esfahbod [Tue, 10 Nov 2009 17:56:35 +0000 (12:56 -0500)]
Remove obsolete TODO item
Behdad Esfahbod [Sat, 7 Nov 2009 00:52:47 +0000 (19:52 -0500)]
Remove done item
Behdad Esfahbod [Sat, 7 Nov 2009 00:52:01 +0000 (19:52 -0500)]
Reverse buffer at the end if RTL
Behdad Esfahbod [Sat, 7 Nov 2009 00:48:16 +0000 (19:48 -0500)]
Handle shaping in non-native direction
Behdad Esfahbod [Fri, 6 Nov 2009 22:46:33 +0000 (17:46 -0500)]
Oops, wrong change
Behdad Esfahbod [Fri, 6 Nov 2009 22:45:38 +0000 (17:45 -0500)]
Change order of font and face for API consistency
Behdad Esfahbod [Fri, 6 Nov 2009 22:42:38 +0000 (17:42 -0500)]
Remove debug info that crept in
Behdad Esfahbod [Fri, 6 Nov 2009 22:23:31 +0000 (17:23 -0500)]
[GSUB] More ligature/component fixing
We can only reuse the ligid if it belongs to a previous ligature, not a
component!
Behdad Esfahbod [Fri, 6 Nov 2009 22:21:01 +0000 (17:21 -0500)]
Add _hb_buffer_add_output_glyphs() that takes codepoint_t*
Behdad Esfahbod [Fri, 6 Nov 2009 21:47:31 +0000 (16:47 -0500)]
Add hb_ot_layout_position_finish()
We expect buffer to be setup with default positions before GPOS.
Behdad Esfahbod [Fri, 6 Nov 2009 20:19:22 +0000 (15:19 -0500)]
Fix FT_Face finalizer call
Behdad Esfahbod [Fri, 6 Nov 2009 20:13:17 +0000 (15:13 -0500)]
Rename hb_buffer_get_len() to hb_buffer_get_length()
Behdad Esfahbod [Fri, 6 Nov 2009 18:52:57 +0000 (13:52 -0500)]
Minor.
Behdad Esfahbod [Fri, 6 Nov 2009 01:17:53 +0000 (20:17 -0500)]
Fix FT_Face generic finalizer
Behdad Esfahbod [Fri, 6 Nov 2009 01:08:17 +0000 (20:08 -0500)]
Cosmetic
Behdad Esfahbod [Fri, 6 Nov 2009 00:58:02 +0000 (19:58 -0500)]
Fix warning
Behdad Esfahbod [Fri, 6 Nov 2009 00:54:23 +0000 (19:54 -0500)]
include errno.h
Behdad Esfahbod [Fri, 6 Nov 2009 00:37:58 +0000 (19:37 -0500)]
Add debugging to object lifecycle
Behdad Esfahbod [Fri, 6 Nov 2009 00:20:06 +0000 (19:20 -0500)]
Cosmetic