Behdad Esfahbod [Thu, 29 Jan 2009 09:20:08 +0000 (09:20 +0000)]
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.
Behdad Esfahbod [Thu, 29 Jan 2009 09:19:56 +0000 (09:19 +0000)]
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.
Behdad Esfahbod [Thu, 29 Jan 2009 09:19:43 +0000 (09:19 +0000)]
Remove old cruft.
2009-01-29 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-dump-main.c (main): Remove old cruft.
Behdad Esfahbod [Thu, 29 Jan 2009 09:19:20 +0000 (09:19 +0000)]
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!
Behdad Esfahbod [Fri, 26 Dec 2008 02:31:47 +0000 (02:31 +0000)]
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.
Behdad Esfahbod [Fri, 26 Dec 2008 02:31:35 +0000 (02:31 +0000)]
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.
Behdad Esfahbod [Wed, 15 Oct 2008 03:45:29 +0000 (03:45 +0000)]
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.
Behdad Esfahbod [Mon, 29 Sep 2008 22:28:47 +0000 (22:28 +0000)]
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.
Behdad Esfahbod [Sun, 29 Jun 2008 18:30:14 +0000 (18:30 +0000)]
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.
Behdad Esfahbod [Thu, 24 Jan 2008 04:42:24 +0000 (04:42 +0000)]
Remove unused macro
Behdad Esfahbod [Wed, 16 Jan 2008 20:39:29 +0000 (20:39 +0000)]
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.
Behdad Esfahbod [Tue, 15 Jan 2008 22:46:32 +0000 (22:46 +0000)]
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.
Behdad Esfahbod [Wed, 5 Dec 2007 03:41:29 +0000 (03:41 +0000)]
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.
Behdad Esfahbod [Fri, 30 Nov 2007 04:31:29 +0000 (04:31 +0000)]
Undo accidental change.
Behdad Esfahbod [Fri, 30 Nov 2007 04:29:58 +0000 (04:29 +0000)]
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.
Behdad Esfahbod [Sat, 24 Nov 2007 01:40:13 +0000 (01:40 +0000)]
Remove unused macro.
2007-11-23 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-impl.c: Remove unused macro.
Behdad Esfahbod [Sun, 18 Nov 2007 22:34:08 +0000 (22:34 +0000)]
Minor
Behdad Esfahbod [Wed, 7 Nov 2007 10:04:11 +0000 (10:04 +0000)]
Remove dead code.
Behdad Esfahbod [Wed, 7 Nov 2007 09:59:18 +0000 (09:59 +0000)]
And some more.
2007-11-07 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: And some more.
Behdad Esfahbod [Wed, 7 Nov 2007 08:06:01 +0000 (08:06 +0000)]
Some more cleanup and merging.
2007-11-07 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Some more cleanup and merging.
Behdad Esfahbod [Mon, 29 Oct 2007 23:51:48 +0000 (23:51 +0000)]
Fix typo.
Behdad Esfahbod [Thu, 25 Oct 2007 23:37:11 +0000 (23:37 +0000)]
Even more cleanup and more type renames.
2007-10-25 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Even more cleanup and more type renames.
Behdad Esfahbod [Thu, 25 Oct 2007 23:22:17 +0000 (23:22 +0000)]
More cleanup, remove redundant error types.
2007-10-25 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: More cleanup, remove redundant error types.
Behdad Esfahbod [Thu, 25 Oct 2007 00:23:46 +0000 (00:23 +0000)]
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.
Behdad Esfahbod [Wed, 24 Oct 2007 22:44:47 +0000 (22:44 +0000)]
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.
Behdad Esfahbod [Wed, 24 Oct 2007 21:35:03 +0000 (21:35 +0000)]
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.
Behdad Esfahbod [Sun, 21 Oct 2007 18:17:02 +0000 (18:17 +0000)]
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.
Behdad Esfahbod [Thu, 11 Oct 2007 08:30:50 +0000 (08:30 +0000)]
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.
Behdad Esfahbod [Thu, 11 Oct 2007 07:46:33 +0000 (07:46 +0000)]
Remove FTGLUE_API/APIDEF cruft.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/ftglue.[ch]: Remove FTGLUE_API/APIDEF cruft.
Behdad Esfahbod [Thu, 11 Oct 2007 07:45:26 +0000 (07:45 +0000)]
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!
Behdad Esfahbod [Thu, 11 Oct 2007 07:34:08 +0000 (07:34 +0000)]
Same here.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz.c: Same here.
Behdad Esfahbod [Thu, 11 Oct 2007 07:33:19 +0000 (07:33 +0000)]
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.
Behdad Esfahbod [Thu, 11 Oct 2007 07:24:47 +0000 (07:24 +0000)]
Some more cleanup.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-buffer.c: Some more cleanup.
Behdad Esfahbod [Thu, 11 Oct 2007 07:21:31 +0000 (07:21 +0000)]
Move some code around.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-buffer.c: Move some code around.
Behdad Esfahbod [Thu, 11 Oct 2007 07:15:16 +0000 (07:15 +0000)]
Minor.
Behdad Esfahbod [Thu, 11 Oct 2007 07:12:49 +0000 (07:12 +0000)]
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).
Behdad Esfahbod [Thu, 11 Oct 2007 07:05:09 +0000 (07:05 +0000)]
Allocate buffer->positions lazily.
2007-10-11 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/*: Allocate buffer->positions lazily.
Behdad Esfahbod [Thu, 11 Oct 2007 06:52:07 +0000 (06:52 +0000)]
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.
Behdad Esfahbod [Thu, 11 Oct 2007 00:07:58 +0000 (00:07 +0000)]
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.
Behdad Esfahbod [Wed, 29 Aug 2007 08:46:50 +0000 (08:46 +0000)]
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.
Behdad Esfahbod [Tue, 21 Aug 2007 08:03:26 +0000 (08:03 +0000)]
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.
Behdad Esfahbod [Tue, 21 Aug 2007 01:38:07 +0000 (01:38 +0000)]
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.
Behdad Esfahbod [Tue, 1 May 2007 02:32:12 +0000 (02:32 +0000)]
Link freetype to harfbuzz-dump, for those systems that don't track
2007-04-30 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/Makefile.am: Link freetype to harfbuzz-dump, for
those systems that don't track dependencies automatically.
Behdad Esfahbod [Tue, 3 Apr 2007 22:45:29 +0000 (22:45 +0000)]
Copy fixes from harfbuzz stable branch. Includes a leak fix, a kerning
2007-04-03 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gdef.c (_HB_GDEF_Check_Property):
* pango/opentype/harfbuzz-gpos.c (HB_Done_GPOS_Table),
(Lookup_PairPos):
* pango/opentype/harfbuzz-open.c (Get_Class1):
Copy fixes from harfbuzz stable branch. Includes a leak fix,
a kerning fix, and an array out-of-bound access fix.
Hans Breuer [Sat, 13 Jan 2007 21:31:41 +0000 (21:31 +0000)]
updated
2007-01-13 Hans Breuer <hans@breuer.org>
* pango/makefile.msc pango/opentype/makefile.msc : updated
Behdad Esfahbod [Tue, 9 Jan 2007 03:32:12 +0000 (03:32 +0000)]
Remove .cvsignore files (moved to svn:ignore prop)
Behdad Esfahbod [Tue, 25 Jul 2006 01:02:27 +0000 (01:02 +0000)]
Bug 347073 – Allow empty GPOS table
2006-07-24 Behdad Esfahbod <behdad@gnome.org>
Bug 347073 – Allow empty GPOS table
* pango/opentype/harfbuzz-open.c (_HB_OPEN_Load_ScriptList): Don't
err on empty GPOS/GSUB tables.
Behdad Esfahbod [Thu, 22 Jun 2006 18:09:04 +0000 (18:09 +0000)]
Bug 345600 – cvs build error in pango/opentype/Makefile
2006-06-22 Behdad Esfahbod <behdad@gnome.org>
Bug 345600 – cvs build error in pango/opentype/Makefile
* pango/opentype/Makefile.am: Rename variable SOURCES to MAINSOURCES.
Some automake versions seem to use it or something.
Behdad Esfahbod [Wed, 31 May 2006 07:42:55 +0000 (07:42 +0000)]
Bug 341138 – Using TTC font, Gtk2 programs begin to eating big memory
2006-05-31 Behdad Esfahbod <behdad@gnome.org>
Bug 341138 – Using TTC font, Gtk2 programs begin to eating big memory
and have many cpu usage.
Patch from Yong Li.
* pango/opentype/ftglue.c (_hb_ftglue_face_goto_table): TrueType table
offsets are absolute, not relative.
Behdad Esfahbod [Wed, 31 May 2006 07:23:02 +0000 (07:23 +0000)]
Bug 336153 – Mark to mark positioning (Lookup Type 6) isn't correct when
2006-05-31 Behdad Esfahbod <behdad@gnome.org>
Bug 336153 – Mark to mark positioning (Lookup Type 6) isn't correct
when using MarkAttchmentType
Patch from Tin Myo Htet.
* pango/opentype/harfbuzz-gpos.c (Lookup_MarkMarkPos): Ignore marks
of non-matchin attachment type.
Behdad Esfahbod [Wed, 12 Apr 2006 18:47:50 +0000 (18:47 +0000)]
Fix loop variables. (coverity found bug.)
2006-04-12 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-gpos.c: Fix loop variables. (coverity
found bug.)
Behdad Esfahbod [Tue, 11 Apr 2006 08:31:44 +0000 (08:31 +0000)]
Bug 337924 – cleanups for issues reported by various compilers Patch
2006-04-11 Behdad Esfahbod <behdad@gnome.org>
Bug 337924 – cleanups for issues reported by various compilers
Patch from Kjartan Maraas.
* examples/viewer-x.c (update):
* modules/arabic/arabic-fc.c (fallback_shape),
(arabic_engine_shape):
* modules/basic/basic-fc.c (fallback_shape), (basic_engine_shape):
* modules/basic/basic-x.c:
* modules/hangul/hangul-fc.c:
* modules/hebrew/hebrew-fc.c (hebrew_engine_shape):
* modules/indic/indic-fc.c:
* modules/khmer/khmer-fc.c:
* modules/syriac/syriac-fc.c:
* modules/thai/thai-fc.c:
* modules/tibetan/tibetan-fc.c:
* pango/break.c:
* pango/modules.c:
* pango/opentype/ftglue.c (_hb_ftglue_face_goto_table):
* pango/pango-attributes.c (pango_attr_list_filter):
* pango/pango-engine.c:
* pango/pango-fontset.c:
* pango/pango-layout.c (pango_layout_set_text),
(pango_layout_xy_to_index), (pango_layout_get_cursor_pos):
* pango/pango-markup.c (text_handler):
* pango/pango-utils.c (read_alias_file):
* pango/pangocairo-fcfont.c (G_DEFINE_TYPE_WITH_CODE):
* pango/pangocairo-fcfontmap.c (G_DEFINE_TYPE_WITH_CODE):
* pango/pangocairo-font.c (_pango_cairo_font_get_hex_box_info):
* pango/pangox-fontmap.c (pango_x_make_matching_xlfd):
* tests/dump-boundaries.c (fail):
Remove unused variables. Remove excess semicolon after DEFINE_TYPE
macros.
Behdad Esfahbod [Mon, 10 Apr 2006 10:33:17 +0000 (10:33 +0000)]
Fix minor bugs reported by the Coverity scan report.
2006-04-10 Behdad Esfahbod <behdad@gnome.org>
Fix minor bugs reported by the Coverity scan report.
* pango/opentype/harfbuzz-gdef.c (HB_GDEF_Build_ClassDefinition):
* pango/opentype/harfbuzz-gpos.c (HB_GPOS_Query_Scripts),
(HB_GPOS_Query_Languages), (HB_GPOS_Query_Features): Do not access
structs before we check them for nullity.
* pango/pango-layout.c (pango_layout_index_to_line),
(pango_layout_index_to_line_and_extents),
(pango_layout_index_to_pos): Check for invalid iterators outside the
loop, so we don't crash.
* pango/pango-layout.c (pango_layout_line_x_to_index): Set
char_trailing instead of trailing in one of too many paths. Should
have been a typo.
* pango/pangox.c (get_font_metrics_from_subfonts): Check for nullity
somewhere.
Behdad Esfahbod [Thu, 6 Apr 2006 18:23:49 +0000 (18:23 +0000)]
Update from HarfBuzz. Lars Knoll fixed all the warnings.
2006-04-06 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype: Update from HarfBuzz. Lars Knoll fixed all the
warnings.
Behdad Esfahbod [Mon, 3 Apr 2006 20:13:17 +0000 (20:13 +0000)]
Make sure TTAG_GDEF and frineds are defined, needed for FreeType <= 2.1.7
2006-04-03 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/harfbuzz-impl.h: Make sure TTAG_GDEF and frineds are
defined, needed for FreeType <= 2.1.7 (pointed by Tim Janik).
Behdad Esfahbod [Fri, 31 Mar 2006 13:19:29 +0000 (13:19 +0000)]
.
Behdad Esfahbod [Fri, 31 Mar 2006 13:18:23 +0000 (13:18 +0000)]
.
Behdad Esfahbod [Fri, 31 Mar 2006 12:45:40 +0000 (12:45 +0000)]
Define NULL.
Behdad Esfahbod [Fri, 31 Mar 2006 12:28:09 +0000 (12:28 +0000)]
Convert pango/opentype to the new project called HarfBuzz.
2006-03-31 Behdad Esfahbod <behdad@gnome.org>
Convert pango/opentype to the new project called HarfBuzz.
* pango/opentype/*: Restructured.
* pango/pango-ot-*: Updated to use HarfBuzz symbol names.
Behdad Esfahbod [Sat, 25 Mar 2006 23:52:30 +0000 (23:52 +0000)]
Don't err on Table_Missing.
2006-03-25 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/ottest.c: Don't err on Table_Missing.
Behdad Esfahbod [Mon, 13 Mar 2006 05:06:05 +0000 (05:06 +0000)]
=== Released 1.12.0 ===
2006-03-13 Behdad Esfahbod <behdad@gnome.org>
* === Released 1.12.0 ===
* configure.in: Version 1.12.0
* NEWS, README: Updated.
Behdad Esfahbod [Mon, 30 Jan 2006 22:37:48 +0000 (22:37 +0000)]
Handle GSUB Lookup type 8, and ReverseChainContextualSubst table. (bug
2006-01-30 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/ftxgsub.c: Handle GSUB Lookup type 8,
and ReverseChainContextualSubst table. (bug #149696,
patch from Aamir Wali)
Behdad Esfahbod [Sat, 28 Jan 2006 20:29:18 +0000 (20:29 +0000)]
Removed.
2006-01-28 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/pango-ot-*: Removed.
* pango/pango-ot-*: Added.
* pango/Makefile.am, pango/opentype/Makefile.am: Adjusted.
Behdad Esfahbod [Wed, 25 Jan 2006 19:33:58 +0000 (19:33 +0000)]
If major.minor of required and available glib versions are the same, add
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* configure.in: If major.minor of required and available glib versions
are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
* */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
Behdad Esfahbod [Sat, 14 Jan 2006 07:00:13 +0000 (07:00 +0000)]
Make sure #include <config.h> is the first include in the file. (bug
2006-01-14 Behdad Esfahbod <behdad@gnome.org>
* */*.c, */*/*.c: Make sure #include <config.h> is the first include
in the file. (bug #158870, based on patch by Luis Menina)
Behdad Esfahbod [Thu, 5 Jan 2006 16:14:49 +0000 (16:14 +0000)]
pango/Makefile.am, pango/fonts.c, pango/glyphstring.c,
2006-01-05 Behdad Esfahbod <behdad@gnome.org>
* pango/Makefile.am,
* pango/fonts.c,
* pango/glyphstring.c,
* pango/pango-attributes.c,
* pango/pango-color.c,
* pango/pango-impl-utils.h,
* pango/pango-item.c,
* pango/pango-layout.c,
* pango/pango-tabs.c,
* pango/pango-utils.c,
* pango/pango-utils.h,
* pango/pangoatsui-fontmap.c,
* pango/pangocairo-font.c,
* pango/pangocairo-fontmap.c,
* pango/pangofc-fontmap.c,
* pango/pangowin32-fontmap.c,
* pango/pangox-fontmap.c,
* pango/pangox.c,
* pango/opentype/pango-ot-info.c,
* pango/opentype/pango-ot-ruleset.c: Intern strings to avoid
unnecessary strdups in the type system. (bug #325832, Matthias Clasen)
Behdad Esfahbod [Tue, 27 Dec 2005 09:55:48 +0000 (09:55 +0000)]
Use g_slice for PangoOTBuffer allocation. (bug #325026, Matthias Clasen)
2005-12-27 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/pango-ot-buffer.c: Use g_slice for PangoOTBuffer
allocation. (bug #325026, Matthias Clasen)
Behdad Esfahbod [Fri, 25 Nov 2005 09:22:02 +0000 (09:22 +0000)]
Tiny doc improvement.
Behdad Esfahbod [Wed, 23 Nov 2005 19:48:10 +0000 (19:48 +0000)]
Fix typo in docs.
2005-11-23 Behdad Esfahbod <behdad@gnome.org>
* pango/opentyp/pango-ot-buffer.c: Fix typo in docs.
Behdad Esfahbod [Wed, 23 Nov 2005 17:54:55 +0000 (17:54 +0000)]
Added "Since:" tags to all interfaces added after Pango 1.0. (#319116,
2005-11-23 Behdad Esfahbod <behdad@gnome.org>
* pango/fonts.c pango/pango-attributes.c pango/pango-context.c
pango/pango-glyph-item.c pango/pango-layout.c
pango/pango-script.c pango/pango-utils.c pango/pangofc-font.c
pango/pangoft2-fontmap.c pango/opentype/pango-ot-buffer.c
pango/opentype/pango-ot-ruleset.c: Added "Since:" tags to all
interfaces added after Pango 1.0. (#319116, Brian Cameron)
Behdad Esfahbod [Wed, 23 Nov 2005 15:19:48 +0000 (15:19 +0000)]
Protect against possible division by zeros (#316468, Steve Grubb)
2005-11-23 Behdad Esfahbod <behdad@gnome.org>
Protect against possible division by zeros (#316468, Steve Grubb)
* pango/pango-context.c (update_metrics_from_items),
pango/pango-fontset.c (pango_fontset_real_get_metrics): If count is
zero, do not alter approximate_{char,digit}_width.
* pango/opentype/disasm.c: Err on invalid DeltaFormat.
Behdad Esfahbod [Wed, 23 Nov 2005 11:53:03 +0000 (11:53 +0000)]
Reworked basic shaper with OpenType support. (#101079, based on patch from
2005-11-23 Behdad Esfahbod <behdad@gnome.org>
* modules/basic/basic-fc.c: Reworked basic shaper with OpenType
support. (#101079, based on patch from Denis Jacquerye and Noah Levitt)
* modules/basic/basic-fc.c (basic_scripts): Added Unicode 4.1 addition
script PANGO_SCRIPT_GLAGOLITIC that is a "simple" script.
* modules/arabic/arabic-fc.c, modules/syriac/syriac-fc.c: Replace
g_utf8_to_ucs4_fast() with g_utf8_strlen()!
* pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_add_feature):
Remove reference in docs to pango_ot_ruleset_shape() that was
removed long ago.
Behdad Esfahbod [Thu, 17 Nov 2005 06:28:11 +0000 (06:28 +0000)]
Part of #101079:
2005-11-17 Behdad Esfahbod <behdad@gnome.org>
Part of #101079:
* pango/opentype/ftxopen.c (Load_Lookup): In extension subtables,
offset is relative to the extension subtable, not the original
table. (Greg Aumann)
* pango/opentype/ftxgpos.c (Load_BaseArray): When reading BaseAnchor,
skip offsets that are zero. Works around bug in Doulos SIL Regular.
Behdad Esfahbod [Wed, 9 Nov 2005 23:30:00 +0000 (23:30 +0000)]
Remove debug line that got in accidentally.
2005-11-09 Behdad Esfahbod <behdad@gnome.org>
* pango/opentype/ftxgpos.c, pango/opentype/ftxopen.c: Remove debug
line that got in accidentally.
Behdad Esfahbod [Fri, 4 Nov 2005 23:55:38 +0000 (23:55 +0000)]
Turn various gcc warnings off. Adding const, adding static, fully
2005-11-04 Behdad Esfahbod <behdad@gnome.org>
* configure.in, examples/argcontext.c examples/cairoview.c,
examples/renderdemo.c, examples/renderdemo.h examples/xftview.c,
modules/basic/basic-x.c, modules/hangul/hangul-fc.c,
modules/hebrew/hebrew-shaper.c, modules/hebrew/hebrew-shaper.h,
modules/indic/indic-fc.c, modules/indic/mprefixups.c,
modules/syriac/syriac-fc.c, pango/break.c pango/fonts.c,
pango/modules.c, pango/pango-coverage.c pango/pango-engine.c,
pango/pango-engine.h, pango/pango-fontmap.c,
pango/pango-fontset.c, pango/pango-impl-utils.h,
pango/pango-layout.c, pango/pango-layout.h,
pango/pango-renderer.c, pango/pango-script.c,
pango/pango-utils.c, pango/pangocairo-fc.h,
pango/pangocairo-font.c, pango/pangocairo-fontmap.c,
pango/pangocairo-private.h, pango/pangofc-decoder.c,
pango/pangofc-font.c, pango/pangofc-fontmap.c pango/pangoft2.c,
pango/pangox-fontcache.c, pango/pangox-fontmap.c pango/pangox.c,
pango/pangoxft-font.c, pango/querymodules.c,
pango/opentype/ftglue.c, pango/opentype/ftxgpos.c,
pango/opentype/ftxopen.c, pango/opentype/pango-ot-buffer.c,
pango/opentype/pango-ot-info.c,
pango/opentype/pango-ot-ruleset.c, tests/dump-boundaries.c,
tests/testboundaries.c, tests/testcolor.c tests/testiter.c,
tests/testscript.c: Turn various gcc warnings off. Adding const,
adding static, fully initializing structs, match signedness in
comparisons. (#317804)
* tests/testscript.c, tools/gen-script-for-lang.c:
(scripts_for_file): Pass error->message instead of error to fail(),
which was wrong.
(compare_lang): Fix typo comparing a and a instead of a and b.
Behdad Esfahbod [Thu, 3 Nov 2005 20:13:40 +0000 (20:13 +0000)]
Patches from #170414. Reviewed by Matthias Clasen.
2005-11-03 Behdad Esfahbod <behdad@gnome.org>
Patches from #170414. Reviewed by Matthias Clasen.
* pango/opentype/ftxgpos.c, pango/opentype/ftxgsub.c: Use call table
to dispatch different lookup types.
* pango/opentype/pango-ot-buffer.c, pango/opentype/pango-ot-ruleset.c:
Small cleanup.
Behdad Esfahbod [Mon, 29 Aug 2005 10:06:40 +0000 (10:06 +0000)]
Generate valid XML output. Dump LookupFlag too.
2005-08-29 Behdad Esfahbod <pango@behdad.org>
* pango/opentype/ottest.c, pango/opentype/disasm.c: Generate valid
XML output. Dump LookupFlag too.
Behdad Esfahbod [Mon, 15 Aug 2005 04:16:04 +0000 (04:16 +0000)]
Replace perror with perror_. Remove FT_BEGIN_STMNT and FT_END_STMNT.
2005-08-15 Behdad Esfahbod <pango@behdad.org>
* pango/opentype/ftglue.h: Replace perror with perror_.
Remove FT_BEGIN_STMNT and FT_END_STMNT. (#313477)
Owen Taylor [Tue, 26 Jul 2005 18:33:27 +0000 (18:33 +0000)]
Skip lookups with lookup index out of range. (Patch from Behdad Esfahbod,
2005-07-26 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c, pango/opentype/ftxgpos.c: Skip lookups
with lookup index out of range. (Patch from Behdad Esfahbod, #171170)
Owen Taylor [Fri, 22 Jul 2005 18:03:58 +0000 (18:03 +0000)]
Remove an unecessary set of block2.
2005-07-22 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftglue.c (ftglue_realloc): Remove
an unecessary set of block2.
Owen Taylor [Fri, 22 Jul 2005 17:56:37 +0000 (17:56 +0000)]
Patch from David Turner. Review and testing by Behdad Esfahbod
2005-07-22 Owen Taylor <otaylor@redhat.com>
Patch from David Turner. Review and testing by Behdad Esfahbod
* pango/opentype/ftglue.[ch] Makefile.am: Glue layer that provides
implementation of the internal functions that the opentype code
expects in terms of publically exported FreeType API.
* pango/opentype/ftxgdef.c pango/opentype/ftxgpos.c
pango/opentype/ftxgsub.c pango/opentype/ftxopen.c
pango/opentype/otlbuffer.c pango/opentype/pango-ot-info.c
pango/opentype/pango-ot-ruleset.c: Remove includes of
internal headers. Small changes to work with ftglue.[ch]
* pango/opentype/fterrcompat.h: Remove: no longer needed.
* pango/opentype/ftxgpos.c: Use FT_IS_SFNT(face) rather
than poking at FT_MODULE_CLASS (face->driver)->module_name.
* pango/opentype/ftxopen.c (Free_FeatureList): Free
fl->ApplyOrder. (Found by Behdad)
Owen Taylor [Thu, 21 Jul 2005 18:15:45 +0000 (18:15 +0000)]
Fix up places where there is missing or incomplete Copyright and License
2005-07-21 Owen Taylor <otaylor@redhat.com>
Fix up places where there is missing or incomplete
Copyright and License information (Reported by William N. Ray)
* pango/opentype/fterrcompat.h: Mark as FreeType/GPL licensed.
* pango/opentype/FT-license.txt: Make this the dual-licensing
description that covers the FreeType code (FreeType's
LICENSE.TXT) rather than the FTL.
* pango/opentype/FTL.TXT: Move the FTL (referenced from
FT-license.txt) to here.
* modules/basic/basic-common.h modules/hebrew/hebrew-shaper.h
modules/thai/thai-charprop.c modules/thai/thai-shaper.h
tools/gen-script-for-lang.c tests/testcolor.c:
Add LGPL header and copyright information.
* modules/indic/indic-ot.[ch] modules/indic/indic-ot-class-tables.c
modules/thai/thai-ot.[ch]: Add LGPL header.
* modules/thai/thai-shaper.c modules/thai/thai-charprop.h:
Minor fixes to copyright information.
* modules/arabic/arabic-ot.c: Add Freetype license boilerplate.
Owen Taylor [Tue, 14 Jun 2005 19:54:19 +0000 (19:54 +0000)]
Chain up from finalize. (#307547, Paolo Borelli)
2005-06-14 Owen Taylor <otaylor@redhat.com>
* pango/opentype/pango-ot-info.c (pango_ot_info_finalize)
pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_finalize):
Chain up from finalize. (#307547, Paolo Borelli)
* pango/opentype/pango-ot-info.c (pango_ot_info_finalizer):
make accidentally public function static.
Tor Lillqvist [Tue, 12 Apr 2005 01:27:21 +0000 (01:27 +0000)]
Rename LDADDS to libpango_ot_la_LIBADD to actually make libpango-ot.la
2005-04-12 Tor Lillqvist <tml@novell.com>
* pango/opentype/Makefile.am: Rename LDADDS to
libpango_ot_la_LIBADD to actually make libpango-ot.la link with
it.
* pango/pangowin32.def: Rename get_scale_factor to
get_metrics_factor here, too. (#300222, Ivan Wong)
Owen Taylor [Thu, 3 Mar 2005 19:38:02 +0000 (19:38 +0000)]
For all binary searches, handle the case where the number of items is 0.
2005-03-03 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxopen.c (Coverage_Index1, Coverage_Index2,
Get_Class2): For all binary searches, handle the case where
the number of items is 0. (#162977, Nick Lamb)
* pango/opentype/ftxgdef.c (TT_GDEF_Build_ClassDefinition):
Handle the case where glyph_count == 0 properly. Fix a problem
with cleanups on memory allocation failure.
(Get_New_Count, Add_Glyph_Property): Avoid reading off the
end of the ClassRangeRecord array.
Owen Taylor [Mon, 22 Nov 2004 23:37:19 +0000 (23:37 +0000)]
Set G_LOG_DOMAIN.
Mon Nov 22 18:30:14 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/Makefile.am pango/Makefile.am
modules/*/Makefile.am: Set G_LOG_DOMAIN.
Owen Taylor [Wed, 22 Sep 2004 18:14:55 +0000 (18:14 +0000)]
Cleanups from 'sparse', #149922, Kjartan Maraas
Wed Sep 22 14:07:47 2004 Owen Taylor <otaylor@redhat.com>
Cleanups from 'sparse', #149922, Kjartan Maraas
* pango/pango-utils.c (read_config): () => (void) in
definition.
* pango/pangofc-fontmap.c (pango_fc_font_map_list_families):
Initialize *n_families, not n_families.
* pango/pangofc-fontmap.c pango/pangoft2.c opentype/ftxgdef.c
opentype/ftxgpos.c opentype/ftxgsub.c: : Fix various 0/NULL
confusion.
Owen Taylor [Tue, 14 Sep 2004 13:45:41 +0000 (13:45 +0000)]
=== Released 1.6.0 ===
Mon Sep 13 17:38:58 2004 Owen Taylor <otaylor@redhat.com>
* === Released 1.6.0 ===
* configure.in: Update versions for 1.6.0
* NEWS: Update.
* README: Minor tweak.
* pango/fonts.c pango/pango-context.c pango/pango-types.h
pango/pango-utils.c pango/pangoft2.c pango/pango-layout.c
pango/opentype/pango-ot-buffer.c: Add a bunch of missing
Since: 1.6.
Owen Taylor [Fri, 30 Jul 2004 21:23:04 +0000 (21:23 +0000)]
Finish extending properties flags from FT_UShort => FT_UInt. (OTLBuffer
Fri Jul 30 17:17:05 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgpos.[ch] pango/opentype/ftxgsub.[ch]
pango/opentype/ftxopen.[ch]: Finish extending properties
flags from FT_UShort => FT_UInt. (OTLBuffer was already
using an FT_UInt)
Owen Taylor [Tue, 27 Jul 2004 17:20:01 +0000 (17:20 +0000)]
Save the order in which features were added and use that when applying
Tue Jul 27 12:38:05 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxopen.[ch] pango/opentype/ftxgsub.c
pango/opentype/ftxpos.c: Save the order in which
features were added and use that when applying features.
(Patch from Soheil Hassas Yeganeh, #122330)
Behdad Esfahbod [Tue, 27 Jul 2004 13:12:19 +0000 (13:12 +0000)]
Remove the unused parameter from the IN_CURITEM() and IN_CURGLYPH macros.
* pango/opentype/ftxgpos.c: Remove the unused parameter
from the IN_CURITEM() and IN_CURGLYPH macros.
Behdad Esfahbod [Tue, 27 Jul 2004 10:43:58 +0000 (10:43 +0000)]
Fix bug to copy glyph from in_string, not out_string.
* pango/opentype/otlbuffer.c (otl_buffer_copy_output_glyph):
Fix bug to copy glyph from in_string, not out_string.
Owen Taylor [Mon, 26 Jul 2004 23:14:53 +0000 (23:14 +0000)]
Fix allocation and indexing in NewGlyphClasses array. (#130661, Masatake
Mon Jul 26 19:11:46 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgdef.c: Fix allocation and indexing
in NewGlyphClasses array. (#130661, Masatake YAMATO)
Owen Taylor [Mon, 26 Jul 2004 19:25:45 +0000 (19:25 +0000)]
Remove the unused parameter from the IN_CURITEM() and IN_CURGLYPH macros.
Mon Jul 26 15:24:11 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c (ADD_Glyph): Remove the
unused parameter from the IN_CURITEM() and IN_CURGLYPH
macros.
Owen Taylor [Mon, 26 Jul 2004 19:23:06 +0000 (19:23 +0000)]
Add missing macro to make the last change actually compile.
Mon Jul 26 15:21:23 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c: Add missing macro to make the
last change actually compile.
Owen Taylor [Mon, 26 Jul 2004 19:20:27 +0000 (19:20 +0000)]
Match backtrack context against the output glyphs not the input glyphs
Mon Jul 26 15:16:07 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]):
Match backtrack context against the output glyphs not
the input glyphs (#145174, Aamir Wali)
Owen Taylor [Mon, 26 Jul 2004 18:59:02 +0000 (18:59 +0000)]
Make Check_Property() take a OTL_GlyphItem, add a gproperties field to
Mon Jul 26 14:49:22 2004 Owen Taylor <otaylor@redhat.com>
* ftxgdef.[ch] otlbuffer.[ch]: Make Check_Property() take a
OTL_GlyphItem, add a gproperties field to OTLGlyphItem,
and use that to cache the properties for a glyph.
* ftxgsub.c ftxgdef.c: Adapt to Check_Property() changes.
* otlbuffer.[ch] ftxgsub.c: Add otl_buffer_copy_output_glyph()
to use when we are copying an unmodified glyph from input
to output that preserves the cached properties.
Owen Taylor [Mon, 19 Jul 2004 21:13:23 +0000 (21:13 +0000)]
Add support for ChainContextSubstFormat3.
Mon Jul 19 17:09:11 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/disasm.c: Add support for
ChainContextSubstFormat3.
Owen Taylor [Mon, 19 Jul 2004 20:37:22 +0000 (20:37 +0000)]
Fix pervasive buffer overruns when skipping glyphs when matching contexts.
Mon Jul 19 16:29:45 2004 Owen Taylor <otaylor@redhat.com>
* pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
Fix pervasive buffer overruns when skipping glyphs
when matching contexts. (#118592, Kailash C. Chowksey)
Owen Taylor [Wed, 23 Jun 2004 20:33:35 +0000 (20:33 +0000)]
#143693, Sayamindu Dasgupta
Wed Jun 23 16:13:53 2004 Owen Taylor <otaylor@redhat.com>
#143693, Sayamindu Dasgupta
* pango/opentype/pango-ot-buffer.c (pango_ot_buffer_set_zero_width_marks) pango/opentype/pango-ot-private.h:
Allow setting for whether marks should be given zero width,
defaulting to FALSE.
* modules/arabic/arabic-fc.c (arabic_engine_shape): Turn
on zero-width-marks setting.