Behdad Esfahbod
0dfcc13a46
Rename ConstCharP to CharP (overloaded now)
15 years ago
Behdad Esfahbod
62c0fd7573
Cleanup de-const-casting during sanitize
15 years ago
Behdad Esfahbod
198facdc55
Use templates for const char * casts
15 years ago
Behdad Esfahbod
eba8b4f644
GNOME Bug 613015 - [HB] Does not sanitize Device tables referenced from ValueRecords
15 years ago
Behdad Esfahbod
673a4efcbc
WIP
15 years ago
Behdad Esfahbod
06558d2a74
Round instead of trunc
15 years ago
Behdad Esfahbod
0e206de986
Fix warnings
15 years ago
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.
15 years ago
Behdad Esfahbod
7f7448a354
Indent
15 years ago
Behdad Esfahbod
c65b26acf2
Use autoconf FLEXIBLE_ARRAY_MEMBER when available
15 years ago
Behdad Esfahbod
9db8ad7531
Add hb_ot_layout_position_finish()
...
We expect buffer to be setup with default positions before GPOS.
15 years ago
Behdad Esfahbod
c3f9f7e59d
Fix MarkMark issue with ligid and components
15 years ago
Behdad Esfahbod
9bef3611f0
Rename [xy]_pos to [xy]_offset since we don't accumulate positions
15 years ago
Behdad Esfahbod
7951279b4a
Implement nil font functions
15 years ago
Behdad Esfahbod
d3480ba37f
Don't use zero-sized arrays
...
It's not part of the standard and MSVC doesn't like it. It makes the code
a lot less elegant than it used to be, but I think it should work now.
15 years ago
Behdad Esfahbod
3e2401f6c5
[HB] Rename DEBUG to TRACE where appropriate
15 years ago
Behdad Esfahbod
0535b50f43
[HB] Add GSUB/GPOS tracing
15 years ago
Behdad Esfahbod
c91facd83b
[HB] Bug 593231 - < c99 compiler dislikes ValueRecord
15 years ago
Behdad Esfahbod
8f034d5849
Fix a few other pedantic warnings
15 years ago
Behdad Esfahbod
3c69bd46e2
[HB] Avoid int overflow in GPOS
...
Bug 592036 - integer overflow bug causes misrendering of Nepali characters
15 years ago
Behdad Esfahbod
b2b18ef43c
[HB] Simplify loop
15 years ago
Behdad Esfahbod
b41f210d12
[HB] Merge mark positionin code between three types of lookups
15 years ago
Behdad Esfahbod
3564ee5216
[HB] Correctly sanitize LigatureAttach
15 years ago
Behdad Esfahbod
cb71a2fb76
[HB] Simplify MarkBase and MarkLig too
15 years ago
Behdad Esfahbod
dfa54f4440
[HB] Simplify MarkMark
15 years ago
Behdad Esfahbod
815a73e420
[HB] Fix possible int overflows during sanitize
15 years ago
Behdad Esfahbod
5769538abf
[HB] Add note about auditing sanitize code for overflows
15 years ago
Behdad Esfahbod
f71329147b
[HB] Ouch. Fix compilation.
15 years ago
Behdad Esfahbod
0532ed160c
[HB] Fix invalid access / overflow on x86-64
...
Bug 591557 – [HB] crash scrolling the evolution message list
Bug 591576 – crashed with SIGSEGV at pango
15 years ago
Behdad Esfahbod
20b035dad4
[HB] Put C++ inline's back
...
Apparetly in C++, inline means a totally different thing.
15 years ago
Behdad Esfahbod
468769b8f5
[HB] Rename hb_ot_layout_feature_mask_t to hb_mask_t
15 years ago
Behdad Esfahbod
90482b6817
[HB] Fix a couple other sanitize() bugs
15 years ago
Behdad Esfahbod
b28815c1f6
[HB] Add sanitize debugging facilities
15 years ago
Behdad Esfahbod
5ff4e13143
[HB] Avoid infinite recusion in Extension sanitize()
15 years ago
Behdad Esfahbod
a328d66e6a
[HB] Minor cleanup
15 years ago
Behdad Esfahbod
e49a84c9e3
[HB] GDEF sanitize()
15 years ago
Behdad Esfahbod
18939487d0
[HB] Fix Extension sanitize()
15 years ago
Behdad Esfahbod
15164d9258
[HB] Fix mix warnings
15 years ago
Behdad Esfahbod
42b778f89e
[HB] GPOS sanitize()
15 years ago
Behdad Esfahbod
196598bbcc
[Hb] Use reinterpret casts instead of direct casts to char *
15 years ago
Behdad Esfahbod
23c86aa000
[HB] Use face_t directly instead of ot_layout_t
15 years ago
Behdad Esfahbod
5f5b24f99f
[OT] Rename C++ header files from *.h to *.hh
15 years ago
Behdad Esfahbod
0ead481a5a
[HB] Port ot-layout to new public API
15 years ago
Behdad Esfahbod
f1322e52d5
[HB] Cleanup public buffer structs
15 years ago
Behdad Esfahbod
0090dc0f67
[HB] Remove hinting setting and use ppem==0 to mean "no hinting"
15 years ago
Behdad Esfahbod
02a370697d
[HB] Move direction to buffer
15 years ago
Behdad Esfahbod
2ebb89d63d
Revert "XX"
...
This reverts commit c939f6aff405ca7b10b1f1538f46148bff719fcb.
15 years ago
Behdad Esfahbod
55520d2af1
XX
15 years ago
Behdad Esfahbod
f53d434b91
[GPOS] Advance buffer cursor in SinglePos lookups. Ouch!
15 years ago
Behdad Esfahbod
6734ed4b6b
[GPOS] Fix property checking
15 years ago