Behdad Esfahbod [Thu, 29 Apr 2010 17:48:26 +0000 (13:48 -0400)]
[sanitize] Make debug code always available to the compiler
Such that we don't break debug build all the time.
Behdad Esfahbod [Thu, 29 Apr 2010 08:41:41 +0000 (04:41 -0400)]
Convert to uppercase in hb_ot_tag_from_language()
Behdad Esfahbod [Thu, 29 Apr 2010 07:59:06 +0000 (03:59 -0400)]
More contour point use
Behdad Esfahbod [Thu, 29 Apr 2010 07:48:27 +0000 (03:48 -0400)]
[gdef] Fix delta scale
Behdad Esfahbod [Thu, 29 Apr 2010 07:48:11 +0000 (03:48 -0400)]
[gdef] Fix rounding
Behdad Esfahbod [Thu, 29 Apr 2010 07:47:00 +0000 (03:47 -0400)]
[gdef] Implement getting contour point
Behdad Esfahbod [Thu, 29 Apr 2010 07:39:39 +0000 (03:39 -0400)]
Make sure mirroring is done in original direction
Reported by Jonathan Kew.
Behdad Esfahbod [Thu, 29 Apr 2010 07:31:03 +0000 (03:31 -0400)]
Use BCP47 private-use tags for OpenType tag language string mapping
Behdad Esfahbod [Thu, 29 Apr 2010 07:11:32 +0000 (03:11 -0400)]
Minor
Behdad Esfahbod [Thu, 29 Apr 2010 06:58:38 +0000 (02:58 -0400)]
Fix bug in hb_language_from_string()
Reported by Jonathan Kew.
Behdad Esfahbod [Thu, 29 Apr 2010 06:28:54 +0000 (02:28 -0400)]
Use const_cast
Behdad Esfahbod [Thu, 29 Apr 2010 06:27:20 +0000 (02:27 -0400)]
Add const
Behdad Esfahbod [Thu, 29 Apr 2010 06:25:30 +0000 (02:25 -0400)]
Rename apply_context -> context
Behdad Esfahbod [Thu, 29 Apr 2010 06:24:25 +0000 (02:24 -0400)]
Rename
Behdad Esfahbod [Thu, 29 Apr 2010 06:19:21 +0000 (02:19 -0400)]
[apply] Use a context object to reduce number of parameters passed around
Behdad Esfahbod [Thu, 29 Apr 2010 05:47:30 +0000 (01:47 -0400)]
Further simplify tracing
Behdad Esfahbod [Thu, 29 Apr 2010 05:40:26 +0000 (01:40 -0400)]
Simplify trace code
Behdad Esfahbod [Thu, 29 Apr 2010 00:25:22 +0000 (20:25 -0400)]
[sanitize] Make debug code always available to the compiler
Such that we don't break debug build all the time.
Behdad Esfahbod [Wed, 28 Apr 2010 19:15:09 +0000 (15:15 -0400)]
[gsubgpos] Make debug code always available to the compiler
Such that we don't break debug build all the time.
Behdad Esfahbod [Wed, 28 Apr 2010 17:33:09 +0000 (13:33 -0400)]
Fix compiler warning about value unused
Behdad Esfahbod [Wed, 28 Apr 2010 17:29:55 +0000 (13:29 -0400)]
[object] Make debug code always available to the compiler
Such that we don't break debug build all the time.
Behdad Esfahbod [Wed, 28 Apr 2010 17:18:41 +0000 (13:18 -0400)]
Minor
Behdad Esfahbod [Wed, 28 Apr 2010 17:16:38 +0000 (13:16 -0400)]
[blob] Make debug code always available to the compiler
Such that we don't break debug build all the time.
Behdad Esfahbod [Wed, 28 Apr 2010 17:10:36 +0000 (13:10 -0400)]
Fix build. Ouch!
Behdad Esfahbod [Wed, 28 Apr 2010 17:09:40 +0000 (13:09 -0400)]
Fix debug build
Behdad Esfahbod [Wed, 28 Apr 2010 03:28:10 +0000 (23:28 -0400)]
[object] Actually handle malloc() failure
Caught by John Daggett.
Behdad Esfahbod [Mon, 26 Apr 2010 14:07:35 +0000 (10:07 -0400)]
Fix Device::get_size() calculation
Behdad Esfahbod [Mon, 26 Apr 2010 03:01:45 +0000 (23:01 -0400)]
Rename Var to Obj
Behdad Esfahbod [Mon, 26 Apr 2010 02:51:05 +0000 (22:51 -0400)]
Remove use of flexible arrays
Also remove wrong ASSERT_SIZE that would trigger only when not using
flexible arrays (which was the case on win32, but not with gcc).
Behdad Esfahbod [Sat, 24 Apr 2010 00:49:18 +0000 (20:49 -0400)]
Cleanup hb_face_create_for_data()
Behdad Esfahbod [Fri, 23 Apr 2010 23:59:53 +0000 (19:59 -0400)]
Allow get_table() to return NULL
Behdad Esfahbod [Fri, 23 Apr 2010 23:43:40 +0000 (19:43 -0400)]
Typo
Behdad Esfahbod [Fri, 23 Apr 2010 21:53:32 +0000 (17:53 -0400)]
Remove lock_instance()
Behdad Esfahbod [Fri, 23 Apr 2010 20:35:01 +0000 (16:35 -0400)]
Add different casts from pointer and ref to avoid bugs
Behdad Esfahbod [Fri, 23 Apr 2010 20:22:54 +0000 (16:22 -0400)]
Remove GET_FOR_DATA macros
The major-version check is now handled by sanitize. If major
doesn't match, we reject and fall back to the Null object.
Behdad Esfahbod [Fri, 23 Apr 2010 19:19:50 +0000 (15:19 -0400)]
Add TODO
Behdad Esfahbod [Fri, 23 Apr 2010 18:56:55 +0000 (14:56 -0400)]
Zero glyph metrics before calling user callback
Behdad Esfahbod [Fri, 23 Apr 2010 18:44:55 +0000 (14:44 -0400)]
More warning fixes
Behdad Esfahbod [Fri, 23 Apr 2010 18:40:36 +0000 (14:40 -0400)]
Remove unused parameter
Behdad Esfahbod [Fri, 23 Apr 2010 18:39:10 +0000 (14:39 -0400)]
Fix compile warnings (HB_GNUC_UNUSED)
Behdad Esfahbod [Fri, 23 Apr 2010 18:07:34 +0000 (14:07 -0400)]
No need to keep blob in sanitize context
Behdad Esfahbod [Fri, 23 Apr 2010 17:57:10 +0000 (13:57 -0400)]
When sanitizing, delay making writable
Before, as soon as we needed to make an edit, we tried to make the blob
writable inplace. That grows code unnecessarily though. We can simply
fail, make writable, then start again. That's indeed what the fallback
was doing anyway.
Behdad Esfahbod [Fri, 23 Apr 2010 17:48:06 +0000 (13:48 -0400)]
[blob] Fallback to copying if mprotect() fails
Behdad Esfahbod [Fri, 23 Apr 2010 17:32:03 +0000 (13:32 -0400)]
Cleanup OpenTypeFontFile
Behdad Esfahbod [Fri, 23 Apr 2010 16:33:02 +0000 (12:33 -0400)]
Properly define separate structs for TTCHeader and TTCHeaderVersion1
Behdad Esfahbod [Fri, 23 Apr 2010 00:15:11 +0000 (20:15 -0400)]
Cleanup Extension lookups
Two things:
1. Allow nested Extension lookups. The offset is always positive, so
it can't loop circularly.
2. Move the check for all Extension subtables having the same lookup
type to the correct place. Before it wasn't really working.
Behdad Esfahbod [Thu, 22 Apr 2010 22:47:03 +0000 (18:47 -0400)]
Add comment re bsearch effect on sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 22:33:12 +0000 (18:33 -0400)]
Cosmetic
Behdad Esfahbod [Thu, 22 Apr 2010 22:29:09 +0000 (18:29 -0400)]
Convert the last set of cast macros to templates
Behdad Esfahbod [Thu, 22 Apr 2010 20:52:09 +0000 (16:52 -0400)]
Remove unused macro
Behdad Esfahbod [Thu, 22 Apr 2010 20:51:42 +0000 (16:51 -0400)]
Cleanup Extension sanitize()
Behdad Esfahbod [Thu, 22 Apr 2010 18:15:11 +0000 (14:15 -0400)]
Fail sanitize on major version mismatch
We handle major-version differences via get_for_data(), so sanitize
should never see a major version mismatch.
Behdad Esfahbod [Thu, 22 Apr 2010 18:11:33 +0000 (14:11 -0400)]
More sanitize cleanup
Behdad Esfahbod [Thu, 22 Apr 2010 17:59:39 +0000 (13:59 -0400)]
Minor cleanup of sanitize
Done with an audit of all sanitize()
Behdad Esfahbod [Thu, 22 Apr 2010 17:50:22 +0000 (13:50 -0400)]
Check for (impossible) overflow
Behdad Esfahbod [Thu, 22 Apr 2010 17:37:58 +0000 (13:37 -0400)]
Cleanup ContextFormat3 sanitize
Behdad Esfahbod [Thu, 22 Apr 2010 17:34:00 +0000 (13:34 -0400)]
Add comment
Behdad Esfahbod [Thu, 22 Apr 2010 17:26:21 +0000 (13:26 -0400)]
Minor
Behdad Esfahbod [Thu, 22 Apr 2010 17:22:41 +0000 (13:22 -0400)]
Remove integrity check in Tag sanitize
Serves no useful purpose.
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