platform/upstream/libHarfBuzzSharp.git
6 years agoAdd Travis based Coverity trigger (#778)
Ebrahim Byagowi [Mon, 12 Feb 2018 07:57:00 +0000 (11:27 +0330)]
Add Travis based Coverity trigger (#778)

6 years agoRemove linker selection from hb-ucdn
Behdad Esfahbod [Mon, 12 Feb 2018 03:12:52 +0000 (19:12 -0800)]
Remove linker selection from hb-ucdn

Since this is a convenience library, it's not actually linked. Or so I think.
Hoping this might fix this Appveyor failure:

https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/job/9884jyb5vryja9pw

Making all in hb-ucdn
make[4]: Entering directory '/c/projects/harfbuzz/src/hb-ucdn'
  CC       libhb_ucdn_la-ucdn.lo
  GEN      libhb-ucdn.la
/bin/sh: libhb_ucdn_la-ucdn.lo: command not found
make[4]: *** [Makefile:404: libhb-ucdn.la] Error 127
make[4]: Leaving directory '/c/projects/harfbuzz/src/hb-ucdn'
make[3]: *** [Makefile:2548: all-recursive] Error 1
make[3]: Leaving directory '/c/projects/harfbuzz/src'
make[2]: *** [Makefile:1382: all] Error 2
make[2]: Leaving directory '/c/projects/harfbuzz/src'
make[1]: *** [Makefile:486: all-recursive] Error 1
make[1]: Leaving directory '/c/projects/harfbuzz'
make: *** [Makefile:418: all] Error 2

6 years agoAdd MSVC to no-visibility list
Behdad Esfahbod [Mon, 12 Feb 2018 03:08:59 +0000 (19:08 -0800)]
Add MSVC to no-visibility list

6 years agoAdd Sun compiler to no-visibility as well
Behdad Esfahbod [Mon, 12 Feb 2018 02:28:10 +0000 (18:28 -0800)]
Add Sun compiler to no-visibility as well

Fixes https://github.com/harfbuzz/harfbuzz/pull/776

6 years agoFix more warnings
Behdad Esfahbod [Mon, 12 Feb 2018 02:26:41 +0000 (18:26 -0800)]
Fix more warnings

6 years agoAnother try at fixing multiple-defintion of NullPool
Behdad Esfahbod [Mon, 12 Feb 2018 02:24:22 +0000 (18:24 -0800)]
Another try at fixing multiple-defintion of NullPool

This one might do it...

6 years ago[docs] Minor update
Behdad Esfahbod [Mon, 12 Feb 2018 01:49:18 +0000 (19:49 -0600)]
[docs] Minor update

6 years ago[subset] Another fixup
Behdad Esfahbod [Mon, 12 Feb 2018 01:46:06 +0000 (19:46 -0600)]
[subset] Another fixup

I broke this in c31fcf4c58d96eb7d9781a986991b1a79ac7be44

6 years agoTry at fixing multiple-definition of NullPool
Behdad Esfahbod [Mon, 12 Feb 2018 01:34:05 +0000 (19:34 -0600)]
Try at fixing multiple-definition of NullPool

If we don't have visibility, make NullPool static.

6 years ago[subset] Use auto_array_t where it does make sense
Behdad Esfahbod [Mon, 12 Feb 2018 01:01:44 +0000 (19:01 -0600)]
[subset] Use auto_array_t where it does make sense

Better fix for https://github.com/harfbuzz/harfbuzz/pull/775

6 years agoMinor
Behdad Esfahbod [Mon, 12 Feb 2018 01:00:42 +0000 (19:00 -0600)]
Minor

6 years agoInstall fonttools on two bots and enable cmake hb-subset test (#777)
Ebrahim Byagowi [Sun, 11 Feb 2018 12:10:55 +0000 (15:40 +0330)]
Install fonttools on two bots and enable cmake hb-subset test (#777)

6 years agoInitialize bad_indices on hb-subset (#775)
Ebrahim Byagowi [Sun, 11 Feb 2018 09:45:44 +0000 (13:15 +0330)]
Initialize bad_indices on hb-subset (#775)

6 years agofix gobject compile issue (#773)
Ebrahim Byagowi [Sun, 11 Feb 2018 08:33:33 +0000 (12:03 +0330)]
fix gobject compile issue (#773)

6 years ago[gpos] Adjust mark attachment heuristic
Behdad Esfahbod [Sun, 11 Feb 2018 03:50:26 +0000 (21:50 -0600)]
[gpos] Adjust mark attachment heuristic

Hopefully it...
fixes https://github.com/harfbuzz/harfbuzz/issues/740

6 years agoMore fixes
Behdad Esfahbod [Sat, 10 Feb 2018 22:13:06 +0000 (16:13 -0600)]
More fixes

6 years agoMisc warning fixes
Behdad Esfahbod [Sat, 10 Feb 2018 21:52:35 +0000 (15:52 -0600)]
Misc warning fixes

6 years agoFix djgpp bot
Behdad Esfahbod [Sat, 10 Feb 2018 21:47:50 +0000 (15:47 -0600)]
Fix djgpp bot

6 years agoMinor
Behdad Esfahbod [Sat, 10 Feb 2018 21:45:17 +0000 (15:45 -0600)]
Minor

6 years agoFavor use of static instead HB_INTERNAL
Ebrahim Byagowi [Sat, 10 Feb 2018 21:30:03 +0000 (01:00 +0330)]
Favor use of static instead HB_INTERNAL

6 years ago[test] Disable test-subset-glyf for now
Behdad Esfahbod [Sat, 10 Feb 2018 21:40:54 +0000 (15:40 -0600)]
[test] Disable test-subset-glyf for now

6 years agoMore fixes
Behdad Esfahbod [Sat, 10 Feb 2018 21:40:03 +0000 (15:40 -0600)]
More fixes

test-subset-glyf still failing. No idea why :(

6 years agoFix more build issues
Behdad Esfahbod [Sat, 10 Feb 2018 21:17:28 +0000 (15:17 -0600)]
Fix more build issues

Hopefully most bots come back with this...

6 years agoHide more symbols of hb-subset (#771)
Ebrahim Byagowi [Sat, 10 Feb 2018 21:12:06 +0000 (00:42 +0330)]
Hide more symbols of hb-subset (#771)

6 years ago[subset] Replace auto_array with prealloced_array
Behdad Esfahbod [Sat, 10 Feb 2018 20:20:10 +0000 (14:20 -0600)]
[subset] Replace auto_array with prealloced_array

auto_array has constructor/destructor. Cannot be used in POD object, as the clang
bots all noticed...

6 years agoFix some other bots
Behdad Esfahbod [Sat, 10 Feb 2018 20:11:16 +0000 (14:11 -0600)]
Fix some other bots

6 years ago[util] Remove use of ssize_t which was failing on MSVC
Behdad Esfahbod [Sat, 10 Feb 2018 20:09:06 +0000 (14:09 -0600)]
[util] Remove use of ssize_t which was failing on MSVC

6 years agoMinor
Behdad Esfahbod [Sat, 10 Feb 2018 19:37:28 +0000 (13:37 -0600)]
Minor

6 years agoFix symbol exporting and libstdc++ linkage of hb-subset (#769)
Ebrahim Byagowi [Sat, 10 Feb 2018 19:43:12 +0000 (23:13 +0330)]
Fix symbol exporting and libstdc++ linkage of hb-subset (#769)

6 years ago[aat] Add buffer messages
Behdad Esfahbod [Sat, 10 Feb 2018 19:35:17 +0000 (13:35 -0600)]
[aat] Add buffer messages

6 years agoMinor
Behdad Esfahbod [Sat, 10 Feb 2018 19:25:49 +0000 (13:25 -0600)]
Minor

6 years ago[subset] Merge remote-tracking branch 'googlefonts/master'
Behdad Esfahbod [Sat, 10 Feb 2018 19:24:22 +0000 (13:24 -0600)]
[subset] Merge remote-tracking branch 'googlefonts/master'

6 years agoReplace Supplier.advance with Supplier::operator+=
Behdad Esfahbod [Sat, 10 Feb 2018 19:15:57 +0000 (13:15 -0600)]
Replace Supplier.advance with Supplier::operator+=

6 years ago[util] Use setlinebuf() if present
Behdad Esfahbod [Sat, 10 Feb 2018 18:45:28 +0000 (12:45 -0600)]
[util] Use setlinebuf() if present

To work around mysterious bug on OS X.

Fixes https://github.com/harfbuzz/harfbuzz/issues/727

6 years agoFix cast warnings on clang (#768)
Ebrahim Byagowi [Sat, 10 Feb 2018 16:20:11 +0000 (19:50 +0330)]
Fix cast warnings on clang (#768)

6 years agoIn glyf subsetting add suport for writing out a short loca table when possible.
Garret Rieger [Sat, 10 Feb 2018 02:41:21 +0000 (18:41 -0800)]
In glyf subsetting add suport for writing out a short loca table when possible.

6 years agoFirst pass at building a cmap
Rod Sheeter [Sat, 10 Feb 2018 01:33:34 +0000 (17:33 -0800)]
First pass at building a cmap

6 years agoCheck for failures from add table.
Garret Rieger [Sat, 10 Feb 2018 01:24:16 +0000 (17:24 -0800)]
Check for failures from add table.

6 years agoadd missing return
Rod Sheeter [Sat, 10 Feb 2018 01:14:37 +0000 (17:14 -0800)]
add missing return

6 years agoKeep a second set of glyph ids in subset plan which is sorted by glyph id and always...
Garret Rieger [Sat, 10 Feb 2018 00:22:09 +0000 (16:22 -0800)]
Keep a second set of glyph ids in subset plan which is sorted by glyph id and always has gid 0

6 years agoFormatting for hb-subset-plan.
Garret Rieger [Sat, 10 Feb 2018 00:06:33 +0000 (16:06 -0800)]
Formatting for hb-subset-plan.

6 years agoTry fixing build with Sun Studio
Behdad Esfahbod [Fri, 9 Feb 2018 22:04:23 +0000 (16:04 -0600)]
Try fixing build with Sun Studio

Trying to fix:
https://circleci.com/gh/harfbuzz/harfbuzz/6635

Also part of:
https://github.com/harfbuzz/harfbuzz/issues/630

6 years agoReturn empty face on hb_subset failure instead of null. Plus some minor cleanups...
Garret Rieger [Fri, 9 Feb 2018 21:54:43 +0000 (13:54 -0800)]
Return empty face on hb_subset failure instead of null. Plus some minor cleanups for _add_head_and_set_loca_version

6 years agoTypo
Behdad Esfahbod [Fri, 9 Feb 2018 21:51:45 +0000 (15:51 -0600)]
Typo

6 years ago[docs] Improve UNSAFE_TO_BREAK docs
Behdad Esfahbod [Fri, 9 Feb 2018 21:43:20 +0000 (15:43 -0600)]
[docs] Improve UNSAFE_TO_BREAK docs

6 years agoDocumentation for HB_GLYPH_FLAG_UNSAFE_TO_BREAK.
bungeman [Thu, 1 Feb 2018 18:31:25 +0000 (13:31 -0500)]
Documentation for HB_GLYPH_FLAG_UNSAFE_TO_BREAK.

HB_GLYPH_FLAG_UNSAFE_TO_BREAK means that the glyph with this flag is somehow affected by the previous logical glyph (the previous index in the buffer if ltr and the next index if the buffer is rtl). If these two glyphs are separated by a break (line or otherwise) then the underlying text should be re-shaped on both sides up to corresponding position in the text of some glyph not marked with this flag.

6 years agoUpdate head table with loca format selected by glyf+loca subsetting.
Garret Rieger [Fri, 9 Feb 2018 20:52:08 +0000 (12:52 -0800)]
Update head table with loca format selected by glyf+loca subsetting.

6 years agoRemove uneeded code in hb-subset.
Garret Rieger [Fri, 9 Feb 2018 18:55:15 +0000 (10:55 -0800)]
Remove uneeded code in hb-subset.

6 years ago[test/text-rendering-tests] Update from upstream
Behdad Esfahbod [Fri, 9 Feb 2018 17:05:17 +0000 (11:05 -0600)]
[test/text-rendering-tests] Update from upstream

6 years agoCreate the groups for a cmap format12. Does not yet build the actual table.
Rod Sheeter [Fri, 9 Feb 2018 03:39:57 +0000 (19:39 -0800)]
Create the groups for a cmap format12. Does not yet build the actual table.

6 years agocapture codepoints sorted so we can use them for cmap later. one day we will have...
Rod Sheeter [Fri, 9 Feb 2018 03:22:47 +0000 (19:22 -0800)]
capture codepoints sorted so we can use them for cmap later. one day we will have a map

6 years agoremove output noise
Rod Sheeter [Fri, 9 Feb 2018 03:20:58 +0000 (19:20 -0800)]
remove output noise

6 years agofix comment
Rod Sheeter [Fri, 9 Feb 2018 03:05:46 +0000 (19:05 -0800)]
fix comment

6 years agocomment the serialization of table
Rod Sheeter [Fri, 9 Feb 2018 03:03:41 +0000 (19:03 -0800)]
comment the serialization of table

6 years agoAdd an extra entry to the end of the loca table to identify the end of the last glyph...
Garret Rieger [Fri, 9 Feb 2018 02:32:24 +0000 (18:32 -0800)]
Add an extra entry to the end of the loca table to identify the end of the last glyph's data.

6 years agoApply per table subsetting while building the new face in hb_subset.
Garret Rieger [Fri, 9 Feb 2018 02:18:16 +0000 (18:18 -0800)]
Apply per table subsetting while building the new face in hb_subset.

6 years agoDisable subset tests on cmake for now.
Garret Rieger [Thu, 8 Feb 2018 23:55:12 +0000 (15:55 -0800)]
Disable subset tests on cmake for now.

6 years agoDisable subset tests on cmake for now.
Garret Rieger [Thu, 8 Feb 2018 23:55:12 +0000 (15:55 -0800)]
Disable subset tests on cmake for now.

6 years agoOops!
Behdad Esfahbod [Thu, 8 Feb 2018 23:44:24 +0000 (17:44 -0600)]
Oops!

6 years agoWhitespace
Behdad Esfahbod [Thu, 8 Feb 2018 23:38:58 +0000 (17:38 -0600)]
Whitespace

6 years agoMinor fixups
Behdad Esfahbod [Thu, 8 Feb 2018 23:35:57 +0000 (17:35 -0600)]
Minor fixups

6 years agoDon't include subset headers in libharfbuzz.
Garret Rieger [Thu, 8 Feb 2018 23:17:34 +0000 (15:17 -0800)]
Don't include subset headers in libharfbuzz.

6 years agoFix include gaurds and include order in hb-subset-glyf and hb-subset-plan
Garret Rieger [Thu, 8 Feb 2018 23:11:15 +0000 (15:11 -0800)]
Fix include gaurds and include order in hb-subset-glyf and hb-subset-plan

6 years agoAdd CMake config for building a separate harfbuzz-subset.
Garret Rieger [Thu, 8 Feb 2018 22:59:32 +0000 (14:59 -0800)]
Add CMake config for building a separate harfbuzz-subset.

6 years agoSkip subset to fonttools comparison test if TTX is not present.
Garret Rieger [Thu, 8 Feb 2018 22:26:18 +0000 (14:26 -0800)]
Skip subset to fonttools comparison test if TTX is not present.

6 years agoWhitespace
Garret Rieger [Thu, 8 Feb 2018 19:31:27 +0000 (11:31 -0800)]
Whitespace

6 years agoIn the hb-subset to fontTools comparison, use ttx to compare the fonts. This allows...
Garret Rieger [Thu, 8 Feb 2018 19:30:36 +0000 (11:30 -0800)]
In the hb-subset to fontTools comparison, use ttx to compare the fonts. This allows for some binary differences such as re-ordered tables.

6 years agoImplement basic loca (long version only) subsetting.
Garret Rieger [Thu, 8 Feb 2018 03:01:21 +0000 (19:01 -0800)]
Implement basic loca (long version only) subsetting.

6 years agoUpdate interface to hb-subset-glyf to subset glyf and loca.
Garret Rieger [Thu, 8 Feb 2018 00:53:18 +0000 (16:53 -0800)]
Update interface to hb-subset-glyf to subset glyf and loca.

6 years agoComment out failing assert in test-subset-glyf for now. Should be re-enabled once...
Garret Rieger [Thu, 8 Feb 2018 00:47:31 +0000 (16:47 -0800)]
Comment out failing assert in test-subset-glyf for now. Should be re-enabled once hb_subset is writing out a new face.

6 years agoAdd a basic test for glyf subsetting.
Garret Rieger [Thu, 8 Feb 2018 00:32:56 +0000 (16:32 -0800)]
Add a basic test for glyf subsetting.

6 years agoCleanups in hb-subset-glyf and hb-subset-plan.
Garret Rieger [Thu, 8 Feb 2018 00:30:07 +0000 (16:30 -0800)]
Cleanups in hb-subset-glyf and hb-subset-plan.

6 years agomove to the hb_face_t dest pattern
Rod Sheeter [Thu, 8 Feb 2018 00:09:52 +0000 (16:09 -0800)]
move to the hb_face_t dest pattern

6 years agosketch a subset<T> and call it for cmap. Add subset to cmap, albeit not working even...
Rod Sheeter [Wed, 7 Feb 2018 23:59:36 +0000 (15:59 -0800)]
sketch a subset<T> and call it for cmap. Add subset to cmap, albeit not working even for the msot basic case just yet

6 years agoFix overflow in space fallback shaping
Behdad Esfahbod [Thu, 8 Feb 2018 23:22:07 +0000 (17:22 -0600)]
Fix overflow in space fallback shaping

Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=657466

6 years agoAvoid undefined-behavior in fallback mark positioning
Behdad Esfahbod [Thu, 8 Feb 2018 23:14:52 +0000 (17:14 -0600)]
Avoid undefined-behavior in fallback mark positioning

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=5584

6 years ago[fuzzer] Minor
Behdad Esfahbod [Thu, 8 Feb 2018 23:00:37 +0000 (17:00 -0600)]
[fuzzer] Minor

6 years ago[util] Minor
Behdad Esfahbod [Thu, 8 Feb 2018 22:27:57 +0000 (16:27 -0600)]
[util] Minor

6 years ago[aat] Minor
Behdad Esfahbod [Thu, 8 Feb 2018 21:11:28 +0000 (15:11 -0600)]
[aat] Minor

6 years ago[test/text-rendering-tests] Update from upstream
Behdad Esfahbod [Thu, 8 Feb 2018 20:10:01 +0000 (14:10 -0600)]
[test/text-rendering-tests] Update from upstream

6 years agoTODO
Behdad Esfahbod [Thu, 8 Feb 2018 03:54:33 +0000 (21:54 -0600)]
TODO

6 years ago[subset] Fix thinko
Behdad Esfahbod [Thu, 8 Feb 2018 03:49:01 +0000 (21:49 -0600)]
[subset] Fix thinko

6 years agoFix another thinko
Behdad Esfahbod [Thu, 8 Feb 2018 03:42:03 +0000 (21:42 -0600)]
Fix another thinko

6 years ago[subset] Fix thinko
Behdad Esfahbod [Thu, 8 Feb 2018 03:37:03 +0000 (21:37 -0600)]
[subset] Fix thinko

6 years agoBuild
Behdad Esfahbod [Thu, 8 Feb 2018 03:34:05 +0000 (21:34 -0600)]
Build

6 years ago[subset] Assemble font
Behdad Esfahbod [Thu, 8 Feb 2018 03:13:10 +0000 (21:13 -0600)]
[subset] Assemble font

6 years ago[set] Respect stride
Behdad Esfahbod [Thu, 8 Feb 2018 00:07:45 +0000 (18:07 -0600)]
[set] Respect stride

Ouch!

6 years ago[subset] Fixup
Behdad Esfahbod [Wed, 7 Feb 2018 23:38:40 +0000 (17:38 -0600)]
[subset] Fixup

6 years agoWhitespace
Behdad Esfahbod [Wed, 7 Feb 2018 23:12:55 +0000 (17:12 -0600)]
Whitespace

6 years ago[subset] Create new face and copy all tables to it
Behdad Esfahbod [Wed, 7 Feb 2018 22:44:52 +0000 (16:44 -0600)]
[subset] Create new face and copy all tables to it

test-subset fails now because subset-face does not know how to compile itself.

6 years agoRefactor subset glyf to remove multiple calls to glyf.fini()
Garret Rieger [Wed, 7 Feb 2018 21:28:11 +0000 (13:28 -0800)]
Refactor subset glyf to remove multiple calls to glyf.fini()

6 years agoAdd implementation of glyf subsetting.
Garret Rieger [Wed, 7 Feb 2018 21:09:54 +0000 (13:09 -0800)]
Add implementation of glyf subsetting.

6 years agoExtract glyf offset calculation into it's own method.
Garret Rieger [Wed, 7 Feb 2018 18:55:30 +0000 (10:55 -0800)]
Extract glyf offset calculation into it's own method.

6 years agoFix two undefined-behavior issues
Behdad Esfahbod [Wed, 7 Feb 2018 20:09:56 +0000 (14:09 -0600)]
Fix two undefined-behavior issues

Fixes https://github.com/harfbuzz/harfbuzz/issues/761
Fixes https://github.com/harfbuzz/harfbuzz/issues/762

6 years agoTry fixing build for platforms that have no visibility attributes
Behdad Esfahbod [Wed, 7 Feb 2018 19:11:26 +0000 (14:11 -0500)]
Try fixing build for platforms that have no visibility attributes

6 years ago[test] Minor
Behdad Esfahbod [Wed, 7 Feb 2018 18:58:23 +0000 (13:58 -0500)]
[test] Minor

6 years ago[subset] Add hb_subset_face
Behdad Esfahbod [Wed, 7 Feb 2018 18:47:35 +0000 (13:47 -0500)]
[subset] Add hb_subset_face

It's a hb_face_t that has add_table() and in the future knows how to
compile itself into a font blob.

6 years ago[subset] Change hb_subset API to remove hb_subset_face_t
Behdad Esfahbod [Wed, 7 Feb 2018 18:07:46 +0000 (13:07 -0500)]
[subset] Change hb_subset API to remove hb_subset_face_t

6 years agoRemove NullPool visibility hack
Behdad Esfahbod [Wed, 7 Feb 2018 17:44:35 +0000 (12:44 -0500)]
Remove NullPool visibility hack

We keep a separate private NullPool in libharfbuzz-subset.so
This can fire back later since now there are two separate null objects,
and comparisons to the null pool can be confused.  Something to deal
with when it comes up. Ouch!

6 years agoglyph ids to retain should most likely keep the glyph id not the codepoint
Rod Sheeter [Wed, 7 Feb 2018 17:37:06 +0000 (09:37 -0800)]
glyph ids to retain should most likely keep the glyph id not the codepoint