Behdad Esfahbod
ad3653751b
Typo
2010-04-23 19:43:40 -04:00
Behdad Esfahbod
990443e5f2
Remove lock_instance()
2010-04-23 17:53:32 -04:00
Behdad Esfahbod
187454c595
Add different casts from pointer and ref to avoid bugs
2010-04-23 17:44:28 -04:00
Behdad Esfahbod
efb324a46f
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.
2010-04-23 16:28:27 -04:00
Behdad Esfahbod
f1aaa2a436
Add TODO
2010-04-23 15:19:50 -04:00
Behdad Esfahbod
33d4d4325e
Zero glyph metrics before calling user callback
2010-04-23 14:56:55 -04:00
Behdad Esfahbod
4206e9511a
More warning fixes
2010-04-23 14:54:01 -04:00
Behdad Esfahbod
ef66ebeabc
Remove unused parameter
2010-04-23 14:40:36 -04:00
Behdad Esfahbod
1d720192b1
Fix compile warnings (HB_GNUC_UNUSED)
2010-04-23 14:39:10 -04:00
Behdad Esfahbod
8dfdca599c
No need to keep blob in sanitize context
2010-04-23 14:07:34 -04:00
Behdad Esfahbod
254933c397
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.
2010-04-23 13:57:10 -04:00
Behdad Esfahbod
71e735e915
[blob] Fallback to copying if mprotect() fails
2010-04-23 13:48:06 -04:00
Behdad Esfahbod
1aa4666b91
Cleanup OpenTypeFontFile
2010-04-23 13:32:03 -04:00
Behdad Esfahbod
ae4190cafe
Properly define separate structs for TTCHeader and TTCHeaderVersion1
2010-04-23 12:33:02 -04:00
Behdad Esfahbod
a065f471b3
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.
2010-04-22 20:15:11 -04:00
Behdad Esfahbod
a0bb49c583
Add comment re bsearch effect on sanitize
2010-04-22 18:47:03 -04:00
Behdad Esfahbod
d632ec4000
Cosmetic
2010-04-22 18:42:05 -04:00
Behdad Esfahbod
a3263aa773
Convert the last set of cast macros to templates
2010-04-22 18:42:01 -04:00
Behdad Esfahbod
c38188a191
Remove unused macro
2010-04-22 16:52:09 -04:00
Behdad Esfahbod
3b2c2df41b
Cleanup Extension sanitize()
2010-04-22 16:51:42 -04:00
Behdad Esfahbod
1856184b93
Fail sanitize on major version mismatch
...
We handle major-version differences via get_for_data(), so sanitize
should never see a major version mismatch.
2010-04-22 14:21:17 -04:00
Behdad Esfahbod
df3f505dcf
More sanitize cleanup
2010-04-22 14:11:33 -04:00
Behdad Esfahbod
278a91f0cd
Minor cleanup of sanitize
...
Done with an audit of all sanitize()
2010-04-22 13:59:39 -04:00
Behdad Esfahbod
9ac7dc73bc
Check for (impossible) overflow
2010-04-22 13:50:22 -04:00
Behdad Esfahbod
9fc8684fd8
Cleanup ContextFormat3 sanitize
2010-04-22 13:37:58 -04:00
Behdad Esfahbod
e77302c61f
Add comment
2010-04-22 13:34:00 -04:00
Behdad Esfahbod
7c469c3ca4
Minor
2010-04-22 13:26:21 -04:00
Behdad Esfahbod
dc228048a8
Remove integrity check in Tag sanitize
...
Serves no useful purpose.
2010-04-22 13:22:41 -04:00
Behdad Esfahbod
8015a8c762
Don't sanitize raw table data
...
That part is performed by individual table sanitize.
2010-04-22 13:21:12 -04:00
Behdad Esfahbod
c293581e96
Add coment
2010-04-22 11:20:28 -04:00
Behdad Esfahbod
1faa76c6e8
Remove unnecessary casts
2010-04-22 10:54:26 -04:00
Behdad Esfahbod
079dc40112
Avoid overflow in TableDirectory sanitize
2010-04-22 10:47:12 -04:00
Behdad Esfahbod
fb5904ec93
Make casts more explicit
2010-04-22 10:43:30 -04:00
Behdad Esfahbod
565c80bd29
Make sure semicolon is expected after DEFINE_NULL_DATA()
2010-04-22 10:26:35 -04:00
Behdad Esfahbod
bb1e16335e
Improve Subst/Pos SubTable access and sanitize
2010-04-22 01:01:35 -04:00
Behdad Esfahbod
81f2af40f9
Simplify Extension offset now that our int types have no alignment
2010-04-22 00:58:49 -04:00
Behdad Esfahbod
19828ad42d
Sanitize shallow in Lookup since the generic SubLookup has no methods
2010-04-22 00:50:19 -04:00
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
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
Behdad Esfahbod
d740c8f78b
Fallback to 'kern' if no GPOS applied
2009-12-20 21:23:56 +01:00
Behdad Esfahbod
2f78c17197
Remove glibism!
2009-12-20 21:03:11 +01:00
Behdad Esfahbod
907e67da13
Oops, add file.
2009-12-20 20:59:51 +01:00
Behdad Esfahbod
2014b8d110
Hook OpenType shaping up
...
Default features only for now.
2009-12-20 20:58:26 +01:00
Behdad Esfahbod
196610ba4c
Pass features down
2009-12-20 19:02:23 +01:00
Behdad Esfahbod
51f141a7f3
Avoid overflow
2009-12-20 18:22:52 +01:00
Behdad Esfahbod
26d7a75752
Refactor hb_shape a bit
2009-12-20 17:58:25 +01:00
Behdad Esfahbod
001fc2d2aa
Add TrueType kern support
2009-12-20 17:24:05 +01:00
Behdad Esfahbod
2c1b85cf66
Direct unicode->get_mirroring directly
2009-12-20 16:29:17 +01:00
Behdad Esfahbod
6a2ef5aa54
Do mirroring
2009-12-20 16:28:01 +01:00
Behdad Esfahbod
0465e69832
Protect against NULL funcs
2009-12-20 16:25:18 +01:00
Behdad Esfahbod
5ceefa1d8d
Add hb_unicode_get_*() functions
2009-12-20 15:29:16 +01:00
Behdad Esfahbod
b8a53e44ce
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.
2009-12-20 14:56:25 +01:00
Behdad Esfahbod
314905d754
Explicitly track whether the buffer has positions
2009-12-20 14:50:42 +01:00
Behdad Esfahbod
314b460d8a
Add HB_DIRECTION_IS_FORWARD/BACKWARD
2009-12-20 13:58:50 +01:00
Behdad Esfahbod
bdd0ff5290
Make main.cc compile without glib
2009-12-15 04:07:40 -05:00
Behdad Esfahbod
807b8aa486
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.
2009-11-19 20:35:01 -05:00
Behdad Esfahbod
8b9b866d3e
Fix warning
2009-11-19 20:27:57 -05:00
Behdad Esfahbod
c65b26acf2
Use autoconf FLEXIBLE_ARRAY_MEMBER when available
2009-11-18 11:27:33 -05:00
Behdad Esfahbod
d33f674cb7
Add Mongolian variation selectors
2009-11-18 09:47:44 -05:00
Behdad Esfahbod
d6387757de
Fix sanitize
2009-11-11 17:15:03 -05:00
Behdad Esfahbod
636f017e38
Remove obsolete TODO item
2009-11-10 12:56:35 -05:00
Behdad Esfahbod
bf2b25dd85
Remove done item
2009-11-06 19:52:47 -05:00
Behdad Esfahbod
4a86053159
Reverse buffer at the end if RTL
2009-11-06 19:52:01 -05:00
Behdad Esfahbod
ff44f88df2
Handle shaping in non-native direction
2009-11-06 19:48:16 -05:00
Behdad Esfahbod
b4b4272c8d
Oops, wrong change
2009-11-06 17:46:33 -05:00
Behdad Esfahbod
52ea47767c
Change order of font and face for API consistency
2009-11-06 17:45:38 -05:00
Behdad Esfahbod
f4f1fc970b
Remove debug info that crept in
2009-11-06 17:42:38 -05:00
Behdad Esfahbod
aa196d6026
[GSUB] More ligature/component fixing
...
We can only reuse the ligid if it belongs to a previous ligature, not a
component!
2009-11-06 17:23:31 -05:00
Behdad Esfahbod
25e7ef7046
Add _hb_buffer_add_output_glyphs() that takes codepoint_t*
2009-11-06 17:21:01 -05:00
Behdad Esfahbod
9db8ad7531
Add hb_ot_layout_position_finish()
...
We expect buffer to be setup with default positions before GPOS.
2009-11-06 16:47:31 -05:00
Behdad Esfahbod
edb54e9aec
Fix FT_Face finalizer call
2009-11-06 15:19:22 -05:00
Behdad Esfahbod
3d14528b8b
Rename hb_buffer_get_len() to hb_buffer_get_length()
2009-11-06 15:13:17 -05:00
Behdad Esfahbod
1ff7775051
Minor.
2009-11-06 13:52:57 -05:00
Behdad Esfahbod
3648bdf5b2
Fix FT_Face generic finalizer
2009-11-05 20:17:53 -05:00
Behdad Esfahbod
5a11c875d8
Cosmetic
2009-11-05 20:08:17 -05:00
Behdad Esfahbod
44533e773f
Fix warning
2009-11-05 19:58:02 -05:00
Behdad Esfahbod
bcc0406a52
include errno.h
2009-11-05 19:54:23 -05:00
Behdad Esfahbod
799b3c375a
Add debugging to object lifecycle
2009-11-05 19:37:58 -05:00
Behdad Esfahbod
25edb940ab
Cosmetic
2009-11-05 19:20:06 -05:00
Behdad Esfahbod
850dc5bb55
Return 0 from get_glyph_nil
2009-11-05 18:26:52 -05:00
Behdad Esfahbod
85555a9533
Initialize font->klass
2009-11-05 18:25:56 -05:00
Behdad Esfahbod
bcd26bd7b1
Add TODO item
2009-11-05 18:03:26 -05:00
Behdad Esfahbod
f4281e0a92
Fix ref counting
2009-11-05 17:58:41 -05:00
Behdad Esfahbod
6358ff45ae
Add hb_ft_face_create_cached
2009-11-05 17:39:16 -05:00
Behdad Esfahbod
2027f74b28
Add default positioning to hb-shape
2009-11-05 16:34:47 -05:00
Behdad Esfahbod
c3f9f7e59d
Fix MarkMark issue with ligid and components
2009-11-05 16:16:14 -05:00
Behdad Esfahbod
d0351314cd
Include stdio.h if debugging
2009-11-05 16:16:06 -05:00
Behdad Esfahbod
2e33669291
Add hb_font_get_*
2009-11-05 13:55:41 -05:00
Behdad Esfahbod
9bef3611f0
Rename [xy]_pos to [xy]_offset since we don't accumulate positions
2009-11-05 12:20:11 -05:00
Behdad Esfahbod
2daa47e9cd
Cosmetic
2009-11-05 12:08:34 -05:00
Behdad Esfahbod
2f50d87368
Start filling hb_shape() in
2009-11-04 21:07:03 -05:00
Behdad Esfahbod
ae070b7d39
Add script and language to buffer
2009-11-04 20:29:54 -05:00
Behdad Esfahbod
8a3511ac6c
Add hb_language_t as well as language/script conversion to OT tags
2009-11-04 19:45:39 -05:00
Behdad Esfahbod
4591753ad4
Define ARRAY_LENGTH
2009-11-04 18:15:59 -05:00
Behdad Esfahbod
214ac7c1ff
Another one
2009-11-04 18:12:32 -05:00
Behdad Esfahbod
1e91434569
Minor
2009-11-04 18:12:09 -05:00
Behdad Esfahbod
48de3730cd
Fix previous commit, ouch!
2009-11-04 16:59:50 -05:00
Behdad Esfahbod
e21899bc35
Fix array query API
...
The array query APIs now all do:
- Return the total number of items
- Take a start_offset, such that individual items can be fetched
- The _count IN/OUT variable always has number of items written
into the array upon return of the function
2009-11-04 16:36:14 -05:00
Behdad Esfahbod
3b59306b85
Finish FT glue. Rough and untested
2009-11-04 15:48:32 -05:00
Behdad Esfahbod
7951279b4a
Implement nil font functions
2009-11-03 20:27:05 -05:00
Behdad Esfahbod
8fb3d1aa4e
Start ft glue
2009-11-03 18:34:20 -05:00
Behdad Esfahbod
d94647e2cd
Add ICU glue
2009-11-03 16:35:10 -05:00
Behdad Esfahbod
b7dd4b945b
Fix hb_be_uint16()
2009-11-03 15:21:15 -05:00
Behdad Esfahbod
cd7555eef2
Namespace MSVC defines in public header
2009-11-03 15:16:10 -05:00
Behdad Esfahbod
5ebabecef3
Move unicode_funcs to buffer
2009-11-03 15:15:07 -05:00
Behdad Esfahbod
d5a8e46099
[Makefile] Install hb-unicode.h
...
Separate OT headers also.
2009-11-03 15:14:40 -05:00
Behdad Esfahbod
21d0fce3d5
Add check for not linking to libstdc++
2009-11-03 14:28:32 -05:00
Behdad Esfahbod
ca95ce460a
Use the C linker, not C++ linker
...
Such that we don't link to libstdc++.
2009-11-03 14:18:33 -05:00
Behdad Esfahbod
ffbe0a853d
More MSVC fixes from Jonathan Kew
2009-11-03 10:52:45 -05:00
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.
2009-11-03 10:47:29 -05:00
Behdad Esfahbod
6bec81aa3a
Cosmetic
2009-11-02 19:17:36 -05:00
Behdad Esfahbod
2f3e69f3cb
Fix build without glib, again
2009-11-02 18:53:15 -05:00
Behdad Esfahbod
63a792a811
Update Makefile to build without glib
2009-11-02 18:34:26 -05:00
Behdad Esfahbod
68a2c771e2
Build without glib
...
Thready-safety disabled in that case, until we add support for pthread, etc.
Fun...
2009-11-02 18:31:53 -05:00
Behdad Esfahbod
cc4c096a7e
MSVC has no stdint.h
2009-11-02 18:14:48 -05:00
Behdad Esfahbod
9a204c7ab5
Remove use of GINT16_FROM_BE
2009-11-02 18:11:55 -05:00
Behdad Esfahbod
1f0ceeb8cf
Install library
2009-11-02 16:51:24 -05:00
Behdad Esfahbod
29aa400183
Add build system
2009-11-02 16:34:59 -05:00
Behdad Esfahbod
c09ed9801e
[HB] Add glyph_metrics typedef
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
91b1e03e03
[HB] Add point_index to get_contour_point()
...
Pointed out by Keith Stribley on HarfBuzz list.
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
aa87d95173
[HB] Fix lookup_flag ignoring
...
Reported by Keith Stribley on HarfBuzz list.
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
52e9a71d57
[HB] Add comment
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
f9c0a2dad0
[HB] Fix apply_lookup() loop
...
Part of Bug 595539 - Regressions in rendering certain Thai sequences with
OpenType font
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
c0ab43c058
[HB] Fix bug in chain_context_lookup() invocations
...
Part of Bug 595539 - Regressions in rendering certain Thai sequences with
OpenType font
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
e6bd4e93bd
[HB] Add TODO item
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
3e2401f6c5
[HB] Rename DEBUG to TRACE where appropriate
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
0535b50f43
[HB] Add GSUB/GPOS tracing
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
95e202403f
[HB] Allow enabling different debug facilities individually
2009-11-02 14:40:48 -05:00
Behdad Esfahbod
37006bd1bd
Fix stupid array growing bug
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
9897749113
[HB] Simplify counting
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
81a5c4df94
[HB] Indent
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
c91facd83b
[HB] Bug 593231 - < c99 compiler dislikes ValueRecord
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
f0c7540c4e
Bug 592484 - invalid write in HB
...
Fix off-by-one.
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
b614b00472
[HB][glib] Make glib unicode funcs static
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
8b53461304
[HB] Fix more casts
2009-11-02 14:40:47 -05:00
Behdad Esfahbod
9d2e02db74
[HB] Rename CAIRO_ in macro prefix to HB_
...
Hiss!
2009-11-02 14:40:46 -05:00
Behdad Esfahbod
388ad037ff
[HB] Remove HB_MEMORY_MODE_READONLY_NEVER_DUPLICATE
...
Unlike the rest of the memory-mode enum, this one didn't only
describe the access mode of the input memory region. Remove it.
If someone wants to inhibit duplicating, they can lock the blob
and throw away the key.
Based on mailing list discussion with Carl Worth.
2009-11-02 14:40:46 -05:00
Behdad Esfahbod
977eeb7144
[HB] s/writeable/writable/g
2009-11-02 14:40:46 -05:00
Behdad Esfahbod
2f5931e404
[HB] Hide lig_id and component members of hb_glyph_info_t
2009-11-02 14:40:46 -05:00
Behdad Esfahbod
6b600dd619
[HB] Fix typo
2009-11-02 14:40:45 -05:00
Behdad Esfahbod
32c65a5ca3
[HB] Add font funcs prototypes
2009-11-02 14:40:45 -05:00
Behdad Esfahbod
8f034d5849
Fix a few other pedantic warnings
2009-11-02 14:40:45 -05:00
Behdad Esfahbod
864e2560b6
[HB] Fix pedantic warnings
2009-11-02 14:40:45 -05:00
Behdad Esfahbod
3e09722214
[HB] Fix more wrong method signatures
2009-11-02 14:40:44 -05:00
Behdad Esfahbod
822e99fe9a
[HB] Fix wrong method signature
2009-11-02 14:40:44 -05:00
Behdad Esfahbod
4ff2a58952
Bug 592194 - Fix missing _SC_PAGE_SIZE macro
...
Autoconfiscate a simple call to mprotect() even more.
2009-11-02 14:40:44 -05:00
Behdad Esfahbod
3c69bd46e2
[HB] Avoid int overflow in GPOS
...
Bug 592036 - integer overflow bug causes misrendering of Nepali characters
2009-11-02 14:40:44 -05:00
Behdad Esfahbod
b2b18ef43c
[HB] Simplify loop
2009-11-02 14:40:44 -05:00
Behdad Esfahbod
b41f210d12
[HB] Merge mark positionin code between three types of lookups
2009-11-02 14:40:44 -05:00
Behdad Esfahbod
cd33cb9ed8
[HB] More minor shuffling
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
80e2aa2e1b
[HB] Move code around
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
3564ee5216
[HB] Correctly sanitize LigatureAttach
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
cb71a2fb76
[HB] Simplify MarkBase and MarkLig too
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
dfa54f4440
[HB] Simplify MarkMark
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
815a73e420
[HB] Fix possible int overflows during sanitize
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
ae728e51e9
[HB] Debug output for SANITIZE_MEM()
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
41895506cb
[HB] Use inline function for SANITIZE_MEM()
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
95528131b5
[HB] Use SANITIZE_THIS() when applicable
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
5769538abf
[HB] Add note about auditing sanitize code for overflows
2009-11-02 14:40:43 -05:00
Behdad Esfahbod
15232e26f4
[HB] Add empty hb_shape() API
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
2866d2974b
[HB] Bitfield packing *is* very delicate
...
Fix the second instance.
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
ec90ee23b2
Bug 591511 – hh-blob.c does not compile using mingw on windows
...
Check for sys/mman.h, not mprotect().
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
12eae6d55d
[HB] Fix buffer sizing issue with mingw gcc
...
Bit field packing is a delicate field. Issue reported in comment 3 here:
http://bugzilla.gnome.org/show_bug.cgi?id=591511
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
6936706cd7
Bug 591413 – needs to link with libstdc++
...
Enforce -fno-exceptions better.
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
c486ea9c35
Bug 591511 – hb-blob.c does not compile using mingw on windows
...
Only call mprotect() when available. For optimal performance, a win32
way to make memory writeable needs to be added.
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
a579584594
[HB] Add comment
2009-11-02 14:40:42 -05:00
Behdad Esfahbod
b6e66ee102
[HB] Always clear positions if dirty, before returning to user
2009-11-02 14:40:41 -05:00
Behdad Esfahbod
e4679d9fae
[HB] Fix _hb_buffer_next() when positioning
...
We were copying glyphs to output. This should not happen when in
GPOS. Back then it was fine, then some optimizations broke then
assumption.
2009-11-02 14:40:41 -05:00
Behdad Esfahbod
5ccf1ba339
[HB] Fixed signedness warnings
2009-11-02 14:40:41 -05:00
Behdad Esfahbod
f71329147b
[HB] Ouch. Fix compilation.
2009-11-02 14:40:40 -05:00
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
2009-11-02 14:40:40 -05:00
Behdad Esfahbod
8d70312c7b
[HB] Add hb_font_funcs_make_immutable()
2009-11-02 14:40:40 -05:00
Behdad Esfahbod
3284d05da2
[HB] Add missing initializer
2009-11-02 14:40:40 -05:00
Behdad Esfahbod
081819ea8b
[OT] Hookup glib unicode funcs
2009-11-02 14:40:39 -05:00
Behdad Esfahbod
49f261df2a
[HB] Add hb-glib
2009-11-02 14:40:39 -05:00
Behdad Esfahbod
eb27ec0cef
[HB] Add hb_unicode_funcs_make_immutable()
2009-11-02 14:40:39 -05:00
Behdad Esfahbod
af9e104028
[HB] Use nil unicode funcs in nil face
2009-11-02 14:40:38 -05:00
Behdad Esfahbod
48910f8f00
[HB] Initialize unicode funcs to nil getters
2009-11-02 14:40:38 -05:00
Behdad Esfahbod
04cc0a29ee
[HB] Flesh out Unicode funcs
2009-11-02 14:40:38 -05:00
Behdad Esfahbod
299f08961f
[HB] Implement buffer UTF-X input
2009-11-02 14:40:37 -05:00
Behdad Esfahbod
1b7b97f28a
[HB] Add buffer UTF-X API
2009-11-02 14:40:37 -05:00
Behdad Esfahbod
fbaf8ffa09
[HB] Add hb_buffer_reverse()
2009-11-02 14:40:37 -05:00
Behdad Esfahbod
cbe5a4e08e
[HB] Reuse the positions array as alt string array
2009-11-02 14:40:37 -05:00
Behdad Esfahbod
5c44188455
[HB] Start adding Unicode funcs
2009-11-02 14:40:36 -05:00
Behdad Esfahbod
20b035dad4
[HB] Put C++ inline's back
...
Apparetly in C++, inline means a totally different thing.
2009-11-02 14:40:36 -05:00
Behdad Esfahbod
a62f776d8e
[HB] Don't override CXX compiler
...
Just add couple of options to it (still assuming gcc)
2009-11-02 14:40:36 -05:00
Behdad Esfahbod
6bdab706ec
[HB] Indent
2009-11-02 14:40:36 -05:00
Behdad Esfahbod
797724904a
[HB] Remove unused code
2009-11-02 14:40:36 -05:00
Behdad Esfahbod
284899ccbe
[HB] Add a NEXT() macro
2009-11-02 14:40:35 -05:00
Behdad Esfahbod
918572fc87
[HB] Remove done TODO item
2009-11-02 14:40:35 -05:00
Behdad Esfahbod
67cb8111f2
[HB] Print mark sets in main.cc
2009-11-02 14:40:35 -05:00
Behdad Esfahbod
17878255fa
[HB] Remove hb_ot_layout_table_find_feature()
...
That function doesn't make much sense as multiple features in the table may
have the same tag.
2009-11-02 14:40:35 -05:00
Behdad Esfahbod
468769b8f5
[HB] Rename hb_ot_layout_feature_mask_t to hb_mask_t
2009-11-02 14:40:34 -05:00
Behdad Esfahbod
7f96b39a9d
[HB] Fix bug introduced recently
2009-11-02 14:40:34 -05:00
Behdad Esfahbod
bff3c0fde5
[HB] Remove clumsy macros and improve API
2009-11-02 14:40:34 -05:00
Behdad Esfahbod
d0b657379b
[HB] Fix various XXX issues
2009-11-02 14:40:34 -05:00
Behdad Esfahbod
82199868fb
[HB] Remove unused var
2009-11-02 14:40:34 -05:00
Behdad Esfahbod
07e69226cb
[HB] Remove another stale XXX
2009-11-02 14:40:33 -05:00
Behdad Esfahbod
e605c367c5
[HB] Rebrand XXX as TODO
2009-11-02 14:40:33 -05:00
Behdad Esfahbod
c5a13048e2
[HB] Remove stale XXX
2009-11-02 14:40:33 -05:00
Behdad Esfahbod
9e826ea283
[HB] Fix unaligned access
2009-11-02 14:40:33 -05:00
Behdad Esfahbod
71a8344a5e
[HB] Remove a few 'inline's, though the compiler mostly ignores them
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
7f3d5c8166
[HB] Fix blob to use a actual mutex
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
a794ebf4be
[HB] Use glib again
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
9b76a290a9
[HB] Improve debug output
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
9faee63034
[HB] Minor
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
f72059ee69
[HB] Add a few TODO items
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
0d77ab8a73
[HB] Improve debug output
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
268cac4c9e
[HB] Fix blob unlock
2009-11-02 14:40:32 -05:00
Behdad Esfahbod
7acb389569
[HB] Improve debug output and fix mprotect bug
2009-11-02 14:40:31 -05:00
Behdad Esfahbod
ec9f8db0d3
[HB] Minor
2009-11-02 14:40:31 -05:00
Behdad Esfahbod
d341881d9a
[HB] Fix build of main.cc
2009-11-02 14:40:31 -05:00
Behdad Esfahbod
8f3be25e7e
[HB] turn debugging off
2009-11-02 14:40:31 -05:00
Behdad Esfahbod
62ed5850d9
[HB] Fix another sanitize() bug; hopefully it's the last one
2009-11-02 14:40:31 -05:00
Behdad Esfahbod
90482b6817
[HB] Fix a couple other sanitize() bugs
2009-11-02 14:40:31 -05:00
Behdad Esfahbod
4f3ad9115a
[HB] More debugging output
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
8cd6fa28d1
[HB] Fix fatal Sanitizer bug
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
2870ac5e5d
[HB] Add missing sanitize
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
b28815c1f6
[HB] Add sanitize debugging facilities
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
7edb430f91
[HB] Rename open-types to open-type; beauty
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
f4b58d3fc2
[HB] Save edit even if not writeable
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
9bd629ccd0
[HB] Fix warnings
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
5ff4e13143
[HB] Avoid infinite recusion in Extension sanitize()
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
d60bb8ca2a
[HB] Hook Sanitizer up. Hell's breaking loose right now
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
679f41fe61
[HB] Fix leak
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
4e8a0602bb
[HB] Add Sanitizer
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
2765d333e5
[HB] Add XXX
2009-11-02 14:40:30 -05:00
Behdad Esfahbod
a328d66e6a
[HB] Minor cleanup
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
577c111649
[HB] Shuffle code around
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
b1e187fc63
[HB] More sanitize infrastructure
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
b508e5ccd5
[HB] open-file sanitize()
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
738c54d9ca
[HB] Tag sanitize()
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
e49a84c9e3
[HB] GDEF sanitize()
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
18939487d0
[HB] Fix Extension sanitize()
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
f2be750981
[HB] Remove stale TODO
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
ac26e2a838
[HB] Hookup NEUTER()
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
15164d9258
[HB] Fix mix warnings
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
42b778f89e
[HB] GPOS sanitize()
2009-11-02 14:40:29 -05:00
Behdad Esfahbod
dc9c4d93cd
[HB] Sanitize DeviceTable
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
ad3a3cd495
[HB] More casts
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
95639fccc1
[HB] Fix couple of bugs
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
2b5a59c277
[HB] More cast cleanup
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
196598bbcc
[Hb] Use reinterpret casts instead of direct casts to char *
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
92b5dd8e71
[HB] Merge more templates
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
e6ab2c59ba
[HB] Simplify indirect sanitize()
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
29d8644a31
[HB] Finish GSUB sanitize()
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
cf086adca1
[HB] Add comment
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
a97ce570ab
[HB] Optimize sanitize()
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
cd3827ee56
[HB] More sanitize()
2009-11-02 14:40:28 -05:00
Behdad Esfahbod
70de50c11e
[HB] Start sanitize()
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
5fc22e647c
[HB] Remove use of typeof()
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
70e0f2a75e
[HB] Make it all work again
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
23c86aa000
[HB] Use face_t directly instead of ot_layout_t
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
fc6c94002d
[HB] Simplify sub-blob support
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
a26442437a
[HB] Add sub-blobs
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
b28e21b90c
[HB] Rename hb-font.c to hb-font.cc
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
5f5b24f99f
[OT] Rename C++ header files from *.h to *.hh
2009-11-02 14:40:27 -05:00
Behdad Esfahbod
2098a021a8
[HB] Move OT file handling out of ot-layout
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
0ead481a5a
[HB] Port ot-layout to new public API
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
678bed4333
[HB] Add top-level header files
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
2c80296aa5
[HB] Add XXX marks
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
c46f8efd6d
[HB] Rename _duplicate to _copy
...
To be in line with cairo
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
f1ebe44985
[HB] Cleanup TODO
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
f1322e52d5
[HB] Cleanup public buffer structs
2009-11-02 14:40:26 -05:00
Behdad Esfahbod
6d5bb18e93
[OT] Match struct with HB's
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
11fbb5487d
[HB] Port buffert to new object API
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
0cc7bc59ea
[HB] Move typedef's around
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
a12dd324a3
[HB] Add get_reference_count()
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
baec684fde
[HB] Remove glib dependency
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
df66028781
[HB] Assorted compiler macros
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
ba8d94ce33
[HB] Simplify object creation
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
c62b503770
[HB] Add abstract font and face API
...
Not used yet.
2009-11-02 14:40:25 -05:00
Behdad Esfahbod
35a7383c61
[HB] Simplify refcounting functions
2009-11-02 14:40:24 -05:00
Behdad Esfahbod
23af767a44
[HB] Fix for dfont's with multiple faces
2009-11-02 14:40:24 -05:00
Behdad Esfahbod
e97a95f2ea
[HB] Use calloc instead of malloc where feasible
2009-11-02 14:40:24 -05:00
Behdad Esfahbod
0090dc0f67
[HB] Remove hinting setting and use ppem==0 to mean "no hinting"
2009-11-02 14:40:24 -05:00
Behdad Esfahbod
f0954d1e08
[HB] Add a "blob" manager
2009-11-02 14:40:24 -05:00
Behdad Esfahbod
02a370697d
[HB] Move direction to buffer
2009-11-02 14:40:23 -05:00
Behdad Esfahbod
7cda6fa24c
[HB] Rename internal vars
2009-11-02 14:40:23 -05:00
Behdad Esfahbod
b196e6f274
[HB] Fix buffer enlargement. Ouch
2009-11-02 14:40:23 -05:00
Behdad Esfahbod
f9cd1014f8
Apply patch from Jonathan Kew
2009-11-02 14:40:23 -05:00
Behdad Esfahbod
2ebb89d63d
Revert "XX"
...
This reverts commit c939f6aff405ca7b10b1f1538f46148bff719fcb.
2009-11-02 14:40:22 -05:00
Behdad Esfahbod
55520d2af1
XX
2009-11-02 14:40:22 -05:00
Behdad Esfahbod
f53d434b91
[GPOS] Advance buffer cursor in SinglePos lookups. Ouch!
2009-11-02 14:40:22 -05:00
Behdad Esfahbod
e35bbd570a
[HB] Improve buffer. Don't dup out buffer unless out is longer than in
...
That is, we work in-place even for ligatures now.
2009-11-02 14:40:22 -05:00
Behdad Esfahbod
6734ed4b6b
[GPOS] Fix property checking
2009-11-02 14:40:21 -05:00
Behdad Esfahbod
cc83ae1248
[GPOS] Add vertical TODO
2009-11-02 14:40:21 -05:00
Behdad Esfahbod
b69d38e7ea
[HB] Remove useless include
2009-11-02 14:40:21 -05:00
Behdad Esfahbod
6c8108cb58
[GPOS] Remove unused variables
2009-11-02 14:40:21 -05:00
Behdad Esfahbod
09c292e3b6
[HB] Fix glyph properties
2009-11-02 14:40:21 -05:00
Behdad Esfahbod
64e33f008f
[GPOS] Fix PairPos signedness
2009-11-02 14:40:20 -05:00
Behdad Esfahbod
80ea5bd10e
[GPOS] Fix mark matching
2009-11-02 14:40:20 -05:00
Behdad Esfahbod
4189b92aaa
[HB] When looking back/forward, skip marks only
2009-11-02 14:40:20 -05:00
Behdad Esfahbod
1246e41021
[GDEF] Support MarkFilteringSets
2009-11-02 14:40:20 -05:00
Behdad Esfahbod
5130c35e93
[HB] Simplify MarkAttachmentType handling
2009-11-02 14:40:20 -05:00
Behdad Esfahbod
e4b92b85a7
[HB] Support parsing MarkFilteringSets introduced in OpenType 1.6
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
515ce4ceb2
[HB] More de-C++'ization
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
d7df42d7ee
[HB] Start MarkFilteringSet support
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
62964afcec
[HB] Implement get_lig_carets()
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
79420ad9ca
[HB] Add get_attach_points()
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
855720ca47
[HB] Remove more macros
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
c968fc2dc8
[HB] More buffer cleanup
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
88a5f5a49b
[HB] Cleanup buffer
2009-11-02 14:40:19 -05:00
Behdad Esfahbod
347f0b8621
[HB] Clean more
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
d9d2a07f4a
[HB] Remove one XXX, add another
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
6c78683c04
[HB] Update copyright years
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
4497af0069
[HB] Would have helped if I actually knew C++ before using it...
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
cc6c644ff2
[HB] More cleanup
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
20cc86b359
[HB] Simplify Tag
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
3ec0092c5e
[HB] Simplify more
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
6ad8d5f3c7
[HB] Simplify some basic things
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
f96ffd43bc
[HB] simplify macros
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
8e7b30782a
[HB] Update text files
2009-11-02 14:40:18 -05:00
Behdad Esfahbod
fa7d472494
[HB] Remove stale makefile.msc too
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
da2c52abcd
[HB] Remove old code!
...
Goodbye 16 thousand lines of ten-year old code!
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
e5372f1621
[HB] Remove stale TODO mark
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
96908b8984
[HB] Add FixedVersion cast to int
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
957740dd25
[HB] Simplify tag
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
87fcdcbe36
[HB] Remove unused data types
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
5876bf1b73
[HB] Simplify version check in GSUB/GPOS
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
212aba6189
[HB] Check for GDEF/GSUB/GPOS versions
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
a21b5062cc
[HB] Minor
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
a080b1cc2f
[HB] Add TODO items
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
e4efdd80a8
[GDEF] Add some get_carret_value() code
2009-11-02 14:40:17 -05:00
Behdad Esfahbod
9b006bc032
[GPOS] MarkLigPosFormat1
...
GPOS is complete now! Yay!
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
923923feb2
[HB] Remove apply_subtables() again
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
d468f9af5b
[HB] Share Extension lookup code between GSUB and GPOS
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
498f1909e0
[GPOS] Remove printf. MarkMarkPos1 is working
...
The "bug" was in the font.
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
c7d457aa3a
[HB] Ouch. Add files.
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
fe550f4dd8
[GPOS] MarkMarkPosFormat1
...
Still not quite working.
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
357ccde36b
[GPOS] MarkBasePosFormat1
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
377bfc5860
[GPOS] Implement MarkArray interface
2009-11-02 14:40:16 -05:00
Behdad Esfahbod
c18ec2b1d7
[GPOS] Implement Device support in AnchorFormat3
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
fca6a0d158
[GPOS] Remove apply_value() return value
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
fb3b5ccfef
[GPOS] Start MarkBasePosFormat1
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
ee8776d9e0
[HB] Add TODO item
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
c6456ca5cf
[HB] Add TODO item
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
3015c41751
[HB] Remove last dependence on the old code base!
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
5c0adce1cc
[HB] Rename harfbuzz-buffer to hb-buffer
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
b857b49c82
[HB] Remove all references to the old code!
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
e1593a6e62
[GPOS] Finally it's working, up to Cursive
...
Wow, IranNastaliq renders perfectly again!
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
0f7e6b2cea
[GPOS] Fix more brokenness
2009-11-02 14:40:15 -05:00
Behdad Esfahbod
ff05d257dd
[HB] Move lookup types enum into subtable class
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
263bbef767
[GDEF] Simplify Device access
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
60d77cf05f
[HB] Indentation
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
90de3dfff9
[HB] Remove unused methods
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
4c44d830d7
[HB] Indentation
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
d18fd8e3f7
[GPOS] CursivePosFormat1
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
70632add33
[GSUB] PairPosFormat2
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
b24ecbadf4
[GPOS] PairPosFormat1
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
056c7ec1ae
[GPOS] Start filling apply() functions in
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
4fa77d3c43
[HB] Use enums
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
6b54c5d044
[HB] More reference cast simplification
2009-11-02 14:40:14 -05:00
Behdad Esfahbod
eb0dfc830e
[HB] Rename LOOKUP_ARGS to APPLY_ARGS
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
2a8e6accdf
[HB] Internally rename position() and substitute() to apply()
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
f6c8a6eacf
[HB] Simplify casts
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
9c42f05a5c
Switch Pango to new, defunt, GPOS
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
5e5eb0573f
[HB] Start GPOS!
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
64e67f7599
[GSUB] Minor
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
d79cae0b4e
[HB] Minor
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
8533bb985e
[GSUB] Protect against mismatching Extension subtable types
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
969afd706e
[GSUB] Implement ReverseChainSingleSubst
...
GSUB is done!
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
4acaffd786
[HB] Don't use G_LIKELY!
2009-11-02 14:40:13 -05:00
Behdad Esfahbod
3dcb12f171
[GSUB] Oops, fix Extension check
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
2e8fb6c38d
[HB] Tweak some constants and fix Coverage
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
d6aae5f5ca
[HB] Cleanup TODOs
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
122f21fb9a
[GSUB] Fix context_length handling in Ligature too
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
47958dea21
[HB] Minor cleanup
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
e73a0c2a90
[HB] Correctly skip glyphs when applying (Chain)Context lookups
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
7cff75babd
[HB] Fix context_length checking
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
d0ba055700
[HB] ChainContext complete
...
IranNastaliq renders perfectly again!
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
e072c24e79
[HB] Implement backtrack matching
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
02e1e5c63f
[HB] One more step to go, for fully working GSUB and ChainContext
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
f14c2b7acf
[HB] Further modularize Context matching
2009-11-02 14:40:12 -05:00
Behdad Esfahbod
13ed4405c5
[HB] A step closer to working ChainContext
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
e8cbaaf6d5
[HB] Add HeadlessArrayTo<>
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
dcb6b60254
[HB] More template goodness
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
aa3d7adca5
[HB] More churning towards ChainContext lookups
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
48f16ed96a
[HB] Towards sharing Context and ChainContext code
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
6cf2a52593
[HB] Add check to avoid infinite recursion
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
887c4b4416
[HB] Cosmetic
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
ca5290f499
[HB] Start ChainContext and ReverseChainSingleSubst lookups
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
433f4aea74
[HB] Remove stale TODO
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
6f20f72e9c
[HB] Split Layout-common tables into new files
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
f45107fe09
[HB] More shuffling
2009-11-02 14:40:11 -05:00
Behdad Esfahbod
f8dc67b3c2
[HB] Cleanup format unions
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
da1097bc3b
[HB] Use four bytes for Null Tag, not 5
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
19fc24f268
[HB] Couple size checks
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
ecf17e849d
[HB] Propagate property of first glyph
...
This slightly grows code size.
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
eca8e33710
[GSUB] Further optimize the main switch
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
13068232e7
[HB] Unify first glyph property checking
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
66bf7ce4e3
[HB] Move Context matching logic out of GSUB
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
a1625528cd
[GSUB] Unify ContextSubst matching
2009-11-02 14:40:10 -05:00
Behdad Esfahbod
c36238bea4
[HB] Renames
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
15c3e75b39
[HB] Simplify buffer
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
36f78446ce
[HB] Add TODO item
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
ee58aaebd2
[HB] Update copyright years
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
f4c9514935
[HB] Simplify more arrays
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
c9a7cbe9cb
[HB] Use ArrayOf<> in GSUB
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
5f810363ac
[HB] Add ArrayOf<>
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
238c855fcd
[HB] Use OffsetTo<> for Coverage
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
3d54bd1293
[HB] Use OffsetTo<> in more places
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
9e4d9d7b27
[HB] Add OffsetTo template.
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
e07f89295b
[HB] Automate int-type size assertion
2009-11-02 14:40:09 -05:00
Behdad Esfahbod
8b83580331
[HB] Use templates for Null objects
...
Also use a common pool for all nul-content ones.
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
6e13d41401
[HB] Remove obsolete comment
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
9f721cf380
[GSUB] Start ChainContextSubst
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
7fca9e5245
[GSUB] Implement ContextSubstFormat3
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
1ff926a568
[GSUB] Implement ContextSubstFormat2
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
fc36d9453e
[GSUB] Add GSUB::substitute_lookup()
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
c43562b2a7
[GSUB] Finish ContextSubstFormat1
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
5ee2189622
[HB] Fix typo
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
6b59c9b445
[HB] Add TODO item
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
c5419b6cf2
[HB] Remove DEFINE_NON_INSTANTIABLE
2009-11-02 14:40:08 -05:00
Behdad Esfahbod
0dff25f036
[HB] Remove get_size()
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
25c6c9a3f6
[GSUB] ContextSubst format 1
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
f702295103
[GSUB] Shuffle
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
a83e08f872
[HarfBuzz] Start a TODO file
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
eed05b04eb
[GSUB] minor
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
cdb317bc4e
[GSUB] Towards Context subtitutes
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
c9c6a78aec
[GSUB] Minor refactoring
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
bb3899a579
[GSUB] Implement ligature substitutions
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
38b011a293
[GSUB] Hook new GSUB up in Pango
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
a84e71ad11
[GSUB] Start Ligature subtable support
2009-11-02 14:40:07 -05:00
Behdad Esfahbod
52886ca56b
[GSUB] Implement Alternate subtables
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
4f27ce7e02
[GSUB] Implement Extension subtables
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
83e61ff470
[GSUB] Fix reverse lookup loop like we did in the old code before
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
5a0b791184
[harfbuzz/GSUB] towards a partially working GSUB
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
30bd763fa2
Implement the first substitute()
2009-11-02 14:40:06 -05:00
Behdad Esfahbod
ce48f03946
Merge harfbuzz-ng
2009-11-02 14:38:33 -05:00
Behdad Esfahbod
0e13beeb93
Use git.mk
2009-04-17 17:39:15 -04:00
Behdad Esfahbod
2d15e72c75
Give it a start at GSUB
2009-04-15 19:50:16 -04:00
Behdad Esfahbod
9d870f2a55
Bug 577952 – Error loading {GDEF,GSUB,GPOS} table 0x6EAD
...
Detect TrueType Collections by checking the font data header instead
of checking for "face->num_faces >1".
2009-04-09 13:30:26 -04:00
Behdad Esfahbod
d49caf1f77
[opentype] Protect against illegal access for arrays of length zero
2009-03-02 15:16:11 +03:30
Behdad Esfahbod
66871797af
[opentype] Use size_t instead of uint for malloc wrappers
2009-03-02 14:20:20 +03:30
Behdad Esfahbod
3664e59c52
Fix Bug 572529 – Poor -I ordering can break build
2009-03-02 11:09:29 +03:30
Behdad Esfahbod
aca4d11388
Allocate all array rows in a single ALLOC call. Saves over 100 alloc calls
...
2009-01-31 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Load_Mark2Array),
(Free_Mark2Array):
Allocate all array rows in a single ALLOC call. Saves over 100
alloc calls when loading DejaVu Sans,
2009-02-02 00:13:07 +00:00
Behdad Esfahbod
c561d69c72
Remove ClassDef->Defined field. This is the comment accompanying it:
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-open.h:
* pango/opentype/harfbuzz-gdef.c (Make_ClassRange),
(HB_GDEF_Build_ClassDefinition):
* pango/opentype/harfbuzz-gpos.c (Load_PosClassRule),
(Load_ChainPosClassRule):
* pango/opentype/harfbuzz-gsub.c (Load_SubClassRule),
(Load_ChainSubClassRule):
* pango/opentype/harfbuzz-open.c (Load_ClassDef1),
(Load_ClassDef2), (_HB_OPEN_Load_ClassDefinition),
(_HB_OPEN_Load_EmptyClassDefinition),
(_HB_OPEN_Free_ClassDefinition):
Remove ClassDef->Defined field. This is the comment accompanying it:
The `Defined' field is not defined in the OpenType specification
but apparently needed for processing fonts like trado.ttf: This
font refers to a class which contains not a single element. We
map such classes to class 0.
The comment is correct that trado.ttf (MS Traditional Arabic) uses
such classes. However, in my testing I couldn't identify any
problems with the font if the special handling is removed. I also
processed as many fonts as I could get my hand on and trado.ttf was
the only not-totally-broken font hitting the special-case code.
DejaVu fonts hit it too, but I'm sure they do not require the
special-handling code. Most probably, that code introduces bugs
in them.
The special-casing was consuming lots of memory. EIGHT MEGABYTES
for loading DejaVu Sans! While this could be complete fixed, I
decided to remove the special-handling code altogether. I don't
think it will make any real difference, and if it does, we'll fix
fonts. Such hacks will not be in harfbuzz-ng anyway.
Bug originally reported by nsf.
2009-01-29 09:20:08 +00:00
Behdad Esfahbod
9372edd6f0
Use calloc(), instead of malloc()ing and memset()ing.
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-impl.c (_hb_alloc): Use calloc(),
instead of malloc()ing and memset()ing.
2009-01-29 09:19:56 +00:00
Behdad Esfahbod
94c21d26ba
Remove old cruft.
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-dump-main.c (main): Remove old cruft.
2009-01-29 09:19:43 +00:00
Behdad Esfahbod
0a47c4f78e
Allocate all array rows in a single ALLOC call. Saves over 2000 alloc
...
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Load_BaseArray), (Free_BaseArray):
Allocate all array rows in a single ALLOC call. Saves over 2000
alloc calls when loading DejaVu Sans!
2009-01-29 09:19:20 +00:00
Behdad Esfahbod
549be924bc
Bug 469049 – Fix all compiler warnings
...
2008-12-25 Behdad Esfahbod <behdad@gnome.org>
Bug 469049 – Fix all compiler warnings
* pango-view/viewer-pangocairo.c (render_callback):
* pango/fonts.c (append_field), (pango_font_description_to_string):
* pango/opentype/harfbuzz-dump.c:
* pango/pango-bidi-type.c (pango_log2vis_get_embedding_levels):
* pango/pango-coverage.c (pango_coverage_set):
* pango/pango-markup.c (span_parse_func):
* pango/pango-renderer.c
(pango_renderer_default_draw_error_underline):
* pango/pango-utils.c (pango_scan_string):
* pango/pangocairo-render.c (pango_cairo_renderer_draw_trapezoid),
(draw_error_underline), (pango_cairo_renderer_class_init):
Fix all the remaining warnings.
2008-12-26 02:31:47 +00:00
Behdad Esfahbod
719f9eaa75
Fix more warnings.
...
2008-12-25 Behdad Esfahbod <behdad@gnome.org>
* pango/modules.c (pango_module_load), (script_info_free):
* pango/opentype/harfbuzz-gpos.c (HB_Load_GPOS_Table):
* pango/pango-bidi-type.c:
* pango/pango-coverage.c (pango_coverage_ref),
(pango_coverage_unref):
* pango/pango-engine.c (pango_engine_shape_real_covers),
(fallback_engine_shape), (fallback_engine_covers):
* pango/pango-fontmap.c (pango_font_map_init):
* pango/pango-ot-ruleset.c (pango_ot_ruleset_finalize),
(pango_ot_ruleset_new):
* pango/pangofc-decoder.c (pango_fc_decoder_init),
(pango_fc_decoder_class_init):
* pango/pangofc-font.c (pango_fc_font_find_shaper),
(pango_fc_font_get_coverage):
* pango/pangofc-fontmap.c (pango_fc_font_map_list_families),
(pango_fc_make_pattern), (pango_fc_font_map_get_patterns),
(get_first_font), (_pango_fc_font_map_get_coverage),
(cleanup_font), (pango_fc_font_description_from_pattern),
(pango_fc_face_list_sizes), (pango_fc_family_list_faces):
* pango/pangoft2-fontmap.c (pango_ft2_font_map_get_resolution):
* pango/pangoft2-render.c (pango_ft2_renderer_init),
(pango_ft2_renderer_draw_trapezoid):
* pango/pangoft2.c (pango_ft2_font_get_face),
(pango_ft2_font_real_unlock_face),
(pango_ft2_free_glyph_info_callback):
Fix more warnings.
2008-12-26 02:31:35 +00:00
Behdad Esfahbod
21f7d507f4
Bug 528272 – "Error loading GPOS table 5503" when using katakana
...
2008-10-14 Behdad Esfahbod <behdad@gnome.org>
Bug 528272 – "Error loading GPOS table 5503" when using katakana
characters
* pango/opentype/harfbuzz-gpos.c (Load_Mark2Array): Skip parsing
null anchor tables.
2008-10-15 03:45:29 +00:00
Behdad Esfahbod
a26c6ae705
Fix left-to-right positioning. Reported by Peter Hunter.
...
2008-09-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c (Position_CursiveChain):
Fix left-to-right positioning. Reported by Peter Hunter.
2008-09-29 22:28:47 +00:00
Behdad Esfahbod
b6c06c56a3
Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font
...
2008-06-29 Behdad Esfahbod <behdad@gnome.org>
Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font
* pango/opentype/harfbuzz-gsub.c (GSUB_Do_String_Lookup): Fix reverse
loops for type 8 lookups.
2008-06-29 18:30:14 +00:00
Behdad Esfahbod
c44733596c
[hb-ot-layout] Add proper namespace to accessors
2008-02-18 21:33:22 -05:00
Behdad Esfahbod
5722567209
Fix typo, add TODOs
2008-02-18 20:58:39 -05:00
Behdad Esfahbod
4a26ea408c
Finish script, language, and feature public API
2008-01-29 17:42:11 -05:00
Behdad Esfahbod
706ab25a4c
Add script and language public getter API
2008-01-28 05:58:50 -05:00
Behdad Esfahbod
40a81314fa
Make main.cc compile again, which means finished getter API
2008-01-28 02:30:48 -05:00
Behdad Esfahbod
e50c3978d3
Rename HB_OT_Layout to hb_ot_layout_t
2008-01-28 00:16:49 -05:00
Behdad Esfahbod
dfa8119651
Rename hb_ot_layout_create() to hb_ot_layout_create_for_data()
2008-01-28 00:12:21 -05:00
Behdad Esfahbod
54e5aac5e2
GDEF completely working now
2008-01-27 21:21:37 -05:00
Behdad Esfahbod
6f425b1179
[GDEF] Finish internal API
2008-01-24 19:39:49 -05:00
Behdad Esfahbod
590d55cbb9
[GDEF] Finish public API
2008-01-24 19:15:35 -05:00
Behdad Esfahbod
aff831ed67
Implement glyph properties
2008-01-24 06:03:45 -05:00
Behdad Esfahbod
ead428d7a0
More public api
2008-01-24 04:09:46 -05:00
Behdad Esfahbod
fd92a3dde3
Starting public interface
2008-01-24 03:36:11 -05:00
Behdad Esfahbod
7d6b95b000
Remove unused macro
2008-01-24 04:42:24 +00:00
Behdad Esfahbod
7586089c6f
Minor
2008-01-23 18:02:28 -05:00
Behdad Esfahbod
aefaafe5bc
Minor renaming
2008-01-23 17:25:29 -05:00
Behdad Esfahbod
a16ecbf056
Initial gsub stub
2008-01-23 17:01:55 -05:00
Behdad Esfahbod
64aef3a549
Add copyright notices.
2008-01-23 16:14:38 -05:00
Behdad Esfahbod
12360f7c15
Minor cleanup, add LIKELY and UNLIKELY annotations
2008-01-23 15:50:38 -05:00
Behdad Esfahbod
8dd1c8b8d6
Clean up file names, add namespace
2008-01-23 05:02:14 -05:00
Behdad Esfahbod
1f437e6f47
Make all code NULL-free and assert-free
2008-01-23 04:55:38 -05:00
Behdad Esfahbod
600e5eb80f
Define get_for_data() factories
2008-01-23 02:01:37 -05:00
Behdad Esfahbod
b9d7688fb3
Finish and test GDEF
2008-01-23 01:38:10 -05:00
Behdad Esfahbod
303fe62824
Misc cleanup
2008-01-23 00:20:48 -05:00
Behdad Esfahbod
17843245fd
Remove COPYING.GPL and COPYING.FTL that are no longer there.
...
2008-01-16 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Remove COPYING.GPL and COPYING.FTL that
are no longer there.
2008-01-16 20:39:29 +00:00
Behdad Esfahbod
a2a9a023f6
HarfBuzz was relicensed to a more generous and simpler license. Adapt. See
...
2008-01-15 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*:
HarfBuzz was relicensed to a more generous and simpler license.
Adapt. See pango/opentype/COPYING for the new license which is
LGPL-compatible.
2008-01-15 22:46:32 +00:00
Behdad Esfahbod
4ccedd22ea
Bug 501575 – Compile errors Patch from Jens Granseuer
...
2007-12-04 Behdad Esfahbod <behdad@gnome.org>
Bug 501575 – Compile errors
Patch from Jens Granseuer
* pango/opentype/harfbuzz-stream.c (_hb_font_goto_table):
* pango/pango-utils.c (handle_alias_line):
Fix C99ism.
2007-12-05 03:41:29 +00:00
Behdad Esfahbod
cd55cfa2b0
Undo accidental change.
2007-11-30 04:31:29 +00:00
Behdad Esfahbod
3f05da638c
Bug 485536 – underline_position can be zero
...
2007-11-29 Behdad Esfahbod <behdad@gnome.org>
Bug 485536 – underline_position can be zero
* pango/pango-utils.c (pango_cairo_quantize_line_geometry):
Document that returned position may be zero.
* pango/pangocairo-win32font.c
(pango_cairo_win32_font_create_metrics_for_context):
* pango/pangofc-font.c (get_face_metrics):
Handle case of underline_position==0 after rounding.
2007-11-30 04:29:58 +00:00
Behdad Esfahbod
e58278fedb
Remove unused macro.
...
2007-11-23 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-impl.c: Remove unused macro.
2007-11-24 01:40:13 +00:00
Behdad Esfahbod
3b047380ae
Minor
2007-11-18 22:34:08 +00:00
Behdad Esfahbod
10d6a25a26
Remove dead code.
2007-11-07 10:04:11 +00:00
Behdad Esfahbod
47d2c33e3d
And some more.
...
2007-11-07 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: And some more.
2007-11-07 09:59:18 +00:00
Behdad Esfahbod
78ef65ba08
Some more cleanup and merging.
...
2007-11-07 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Some more cleanup and merging.
2007-11-07 08:06:01 +00:00
Behdad Esfahbod
5c9bd37995
Fix typo.
2007-10-29 23:51:48 +00:00
Behdad Esfahbod
ef1f481752
Even more cleanup and more type renames.
...
2007-10-25 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Even more cleanup and more type renames.
2007-10-25 23:37:11 +00:00
Behdad Esfahbod
282c60a0ee
More cleanup, remove redundant error types.
...
2007-10-25 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: More cleanup, remove redundant error types.
2007-10-25 23:22:17 +00:00
Behdad Esfahbod
4280ec4df4
Rename ftglue.c to harfbuzz-impl.c and more type renames and moving code
...
2007-10-24 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Rename ftglue.c to harfbuzz-impl.c and more
type renames and moving code around.
2007-10-25 00:23:46 +00:00
Behdad Esfahbod
5716ae278a
New header file harfbuzz-global.h. Rename FT_* int types to HB_* types.
...
2007-10-24 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: New header file harfbuzz-global.h. Rename
FT_* int types to HB_* types.
2007-10-24 22:44:47 +00:00
Behdad Esfahbod
2130d852c7
Add commented-out dummy struct for Extension lookups.
...
2007-10-24 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos-private.h:
* pango/opentype/harfbuzz-gsub-private.h:
Add commented-out dummy struct for Extension lookups.
2007-10-24 21:35:03 +00:00
Behdad Esfahbod
13b2b96384
Bug 488840 – harfbuzz: protect against ligid overflow
...
2007-10-21 Behdad Esfahbod <behdad@gnome.org>
Bug 488840 – harfbuzz: protect against ligid overflow
* pango/opentype/harfbuzz-buffer.c (_hb_buffer_allocate_ligid):
Never return zero, even in case of overflow.
* pango/opentype/harfbuzz-impl.h: Define dummy HB_LIKELY() and
HB_UNLIKELY(), to be filled later.
2007-10-21 18:17:02 +00:00
Behdad Esfahbod
6b347138b5
Mark internal symbols as HB_INTERNAL and define that to static in
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Mark internal symbols as HB_INTERNAL and
define that to static in harfbuzz.c.
* pango/opentype/harfbuzz-buffer-internal.h: New file.
2007-10-11 08:30:50 +00:00
Behdad Esfahbod
7cdfb61dee
Remove FTGLUE_API/APIDEF cruft.
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/ftglue.[ch]: Remove FTGLUE_API/APIDEF cruft.
2007-10-11 07:46:33 +00:00
Behdad Esfahbod
61ddbafaaa
Build harfbuzz.c instead of individual source files, to let compiler go
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Build harfbuzz.c instead of individual
source files, to let compiler go wild with optimizations!
2007-10-11 07:45:26 +00:00
Behdad Esfahbod
a219b3d003
Same here.
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz.c: Same here.
2007-10-11 07:34:08 +00:00
Behdad Esfahbod
6567e16e3b
Don't include harfbuzz-dump.[ch] in libharfbuzz.a. Those are just used by
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Don't include harfbuzz-dump.[ch] in
libharfbuzz.a. Those are just used by the harfbuzz-dump tool.
2007-10-11 07:33:19 +00:00
Behdad Esfahbod
0b032549ba
Some more cleanup.
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-buffer.c: Some more cleanup.
2007-10-11 07:24:47 +00:00
Behdad Esfahbod
7a26864308
Move some code around.
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-buffer.c: Move some code around.
2007-10-11 07:21:31 +00:00
Behdad Esfahbod
7a5405c826
Minor.
2007-10-11 07:15:16 +00:00
Behdad Esfahbod
986f4fd968
Rename buffer->inplace to buffer->separate_out with the inverted meaning,
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-buffer.[ch]: Rename buffer->inplace to
buffer->separate_out with the inverted meaning, such that buffer
is initialization is memset(0).
2007-10-11 07:12:49 +00:00
Behdad Esfahbod
06003908cc
Allocate buffer->positions lazily.
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Allocate buffer->positions lazily.
2007-10-11 07:05:09 +00:00
Behdad Esfahbod
fc3d6f5758
Bug 485621 – Get rid of freetype memory allocator in harfbuzz
...
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
Bug 485621 – Get rid of freetype memory allocator in harfbuzz
* pango/opentype/*: Remove all occurences of FT_Memory. Use
malloc/realloc/free directly.
* pango/pango-ot*: Update to above.
2007-10-11 06:52:07 +00:00
Behdad Esfahbod
a8abb8b994
Bug 485559 – Boston Summit HarfBuzz optimizations
...
2007-10-10 Behdad Esfahbod <behdad@gnome.org>
Bug 485559 – Boston Summit HarfBuzz optimizations
* pango/opentype/*: HarfBuzz hacking to:
- Rename last remaining FT_Err stuff to HB_Err.
- Fix a couple invalid table paths to be permissive so
fonts work better. Particularly GDEF table for Nafees
Nastaliq is loaded and works great now.
- Optimize harfbuzz buffer to not copy/swap for simple
one-to-one and "copy" GSUB operations.
* pango/pango-ot*: Update to FT_Err to HB_Err renaming.
2007-10-11 00:07:58 +00:00
Behdad Esfahbod
dd810b76bc
Bug 302952 – The placement of a diacritic marks for an arabic ligature
...
2007-08-29 Behdad Esfahbod <behdad@gnome.org>
Bug 302952 – The placement of a diacritic marks for an arabic ligature
is not correct
* pango/opentype/harfbuzz-buffer.c (hb_buffer_allocate_ligid): Don't
use zero as allocated ligature id. Zero means no ligature id.
2007-08-29 08:46:50 +00:00
Behdad Esfahbod
e90d199194
Bug 463430 – Gets stuck while "formatting message"
...
2007-08-21 Behdad Esfahbod <behdad@gnome.org>
Bug 463430 – Gets stuck while "formatting message"
* pango/opentype/harfbuzz-gpos.c (Lookup_PairPos1),
(Lookup_PairPos2), (Lookup_PairPos), (Do_ContextPos):
* pango/opentype/harfbuzz-gsub.c (Do_ContextSubst):
Change type of intermediate index variable from FT_UShort to
FT_ULong as it was overlowing with more than 65536 glyphs.
2007-08-21 08:03:26 +00:00
Behdad Esfahbod
13b86ee398
Don't ignore error return value of hb_buffer_copy_output_glyph(). Patch
...
2007-08-20 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gsub.c (GSUB_Do_String_Lookup): Don't
ignore error return value of hb_buffer_copy_output_glyph(). Patch
sent to harfbuzz-list.
2007-08-21 01:38:07 +00:00
Behdad Esfahbod
4c2556cb4c
[gdef] Initial implementation
2007-07-06 11:29:21 -04:00