src


Log

Author Commit Date CI Message
Behdad Esfahbod 9974a661 2024-10-27T16:14:53 [icu] Make it build with ICU 76 Fixes https://github.com/harfbuzz/harfbuzz/issues/4915
Qunxin Liu e5139c51 2024-10-21T12:54:56 bug fix in hashmap get_with_hash()
Behdad Esfahbod 78609702 2024-10-15T14:12:07 [coretext-font] Implement get_glyph_v_advances
Behdad Esfahbod e1026a22 2024-10-15T14:05:39 [coretext-font] Implement get_variation_glyph() Not sure if I got it right, but *seems* to work.
Behdad Esfahbod d44cc8a1 2024-10-15T13:54:16 [coretext-font] Implement get_glyph_name()
Behdad Esfahbod 12fc715d 2024-10-12T20:14:59 [ft] Add hb_ft_face_create_from_file_or_fail() New API: +hb_ft_face_create_from_file_or_fail()
Behdad Esfahbod 0ce67f56 2024-10-15T13:49:01 [coretext-font] Implement font_get_h_metrics
Behdad Esfahbod e31ea830 2024-10-14T16:00:06 [ft] Try using a ref-counted ft_library https://github.com/harfbuzz/harfbuzz/pull/4895#issuecomment-2412348792
Behdad Esfahbod de1a1e27 2024-10-15T14:17:38 [coretext-font] Implement get_glyph_v_origin() For a font without vertical metrics, I'm getting different values from ot/ft. But that's expected, since in ot we just implemented the same heuristics as ft.
Behdad Esfahbod 89c83b5b 2024-10-12T19:45:12 [coretext] Add hb_coretext_face_create_from_file_or_fail() New API hb_coretext_face_create_from_file_or_fail()
Behdad Esfahbod 8a805271 2024-10-10T12:56:31 [coretext] Start implementing CoreText font-funcs Does nominal glyph mapping, horiz advances, and draw so far.
Behdad Esfahbod 064b2417 2024-10-09T15:12:59 [coretext] Rename hb-coretext.cc to hb-coretext-shape.cc
Behdad Esfahbod b12acba4 2024-10-12T19:29:02 [face] Add hb_face_create_from_file_or_fail() New API: + hb_face_create_from_file_or_fail()
Behdad Esfahbod 2437fd88 2024-10-12T19:24:42 [face] Add hb_face_create_or_fail() New API: + hb_face_create_or_fail()
Behdad Esfahbod 2166a46a 2024-10-12T08:47:38 [coretext] Don't set CoreText funcs on new CoreText fonts
Behdad Esfahbod 62ae9fbd 2024-10-10T14:26:49 [coretext-font] Implement get_glyph_from_name
Behdad Esfahbod b5e9f2cb 2024-10-10T14:15:50 [coretext-font] Implement get_glyph_extents
Behdad Esfahbod 8db2997e 2024-10-10T13:55:11 [coretext] Configure hb_coretext_font_create() with CT font funcs Not sure if this is a good idea...
Behdad Esfahbod ab360899 2024-10-10T14:46:27 [CFF] Increase max op num limit This actually counts operands too, not just operators. In a big variable-font design-space, each blend can easily take a dozen ops or more. I was sent a font for which this limit was hit. Increase by 20x for now.
Behdad Esfahbod 1a4bdd69 2024-10-10T14:16:14 [font] Change fallback y_advance sign Ouch.
Khaled Hosny 6a25df24 2024-10-09T14:09:22 [COLR] Add and use get_clip_list ()
Khaled Hosny 5462978c 2024-10-09T13:43:13 [COLR] Lets see if this makes CIFUZZ any happier
Behdad Esfahbod 008505e1 2024-10-08T09:27:09 [COLR] Pepper some hb_barrier()'s around The version is a minor version (because uint16), as such version > 1 should be considered as supporting version 1 data.
Khaled Hosny cec95a2d 2024-10-07T21:06:56 Try to fix heap-buffer-overflow
Khaled Hosny 4d1f6e04 2024-10-06T18:25:24 [COLR] Enable COLRv0 support in get_extents() paint_glyph() supports COLRv0 but this code is never reached because of the early return if version is not 1. This early return seems to be from before COLRv0 extents were supported.
Behdad Esfahbod 4587e08a 2024-10-07T08:41:23 [VarStoreInstancer] Fix null deref Should fix this hopefully: https://github.com/harfbuzz/harfbuzz/actions/runs/11203732283/job/31141330056?pr=4885
Behdad Esfahbod e8de8d88 2024-10-07T06:11:25 [CONFIG] Remove unused HB_NDEBUG
David Corbett b6196986 2024-10-03T15:56:04 [USE] Update the data files This uses the data files from <https://github.com/microsoft/font-tools/tree/e00698c07a0444647db84a7f8bf03d1081bd53b3/USE>.
David Corbett 31b22016 2024-10-03T14:16:54 [ot-tags] Update IANA and OT language registries
Julien Nabet 5772f4ff 2024-10-01T19:29:04 missing-field-initializers in main.cc FAILED: src/main.p/main.cc.o clang++ -Isrc/main.p -Isrc -I../src -I. -I.. -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++11 -fno-exceptions -O3 -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -DHAVE_CONFIG_H -Wall -Wextra -Werror -pthread -Wno-non-virtual-dtor -UNDEBUG -MD -MQ src/main.p/main.cc.o -MF src/main.p/main.cc.o.d -o src/main.p/main.cc.o -c ../src/main.cc ../src/main.cc:220:33: error: missing field 'y_bearing' initializer [-Werror,-Wmissing-field-initializers] hb_glyph_extents_t extents = {0}; ^ ../src/main.cc:270:36: error: missing field 'y_bearing' initializer [-Werror,-Wmissing-field-initializers] hb_glyph_extents_t extents = {0}; ^ 2 errors generated.
Julien Nabet 18f1d912 2024-10-01T18:56:51 missing-field-initializers in hb-draw.h With clang build, I got: FAILED: test/api/test-draw.p/test-draw.c.o clang -Itest/api/test-draw.p -Itest/api -I../test/api -I. -I.. -Isrc -I../src -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/freetype2 -I/usr/include/libpng16 -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -DHAVE_CONFIG_H -Wall -Wextra -Werror -pthread -MD -MQ test/api/test-draw.p/test-draw.c.o -MF test/api/test-draw.p/test-draw.c.o.d -o test/api/test-draw.p/test-draw.c.o -c ../test/api/test-draw.c ../test/api/test-draw.c:920:26: error: missing field 'reserved4' initializer [-Werror,-Wmissing-field-initializers] hb_draw_state_t st = HB_DRAW_STATE_DEFAULT; ^ ../src/hb-draw.h:73:71: note: expanded from macro 'HB_DRAW_STATE_DEFAULT' define HB_DRAW_STATE_DEFAULT {0, 0.f, 0.f, 0.f, 0.f, {0.}, {0.}, {0.}}
Behdad Esfahbod c7ef6a2e 2024-09-25T19:42:40 Remove the hack re variation-selectors Instead of abusing an unused Gen_Cat value, use existing facilities to remember variation selectors. Addresses https://github.com/RazrFalcon/rustybuzz/pull/134#issuecomment-2374894164
Khaled Hosny a1d9bfe6 2024-09-24T19:52:43 10.0.1
Behdad Esfahbod 527e60b0 2024-09-24T09:18:08 [morx] Relax sanitizing Ignore claimed ChainSubtable length and only sanitize against the whole table. Works around what seems to be a broken LookupFormat0 in a Noncontextual subtable in GeezaPro on MacOS 15.0 Fixes https://github.com/harfbuzz/harfbuzz/issues/4873
Behdad Esfahbod 70ca19df 2024-09-24T08:42:44 Use hb_barrier() instead of longer name No functional change.
Khaled Hosny d5261f72 2024-09-23T23:07:55 10.0.0
chitao1234 700ef11c 2024-08-23T11:29:34 [meson] Add back with_libstdcxx build option Building harfbuzz when targeting Android API<=20 would need libstdc++ due to lack of uselocale and freelocale in C library but present in libstdc++. This reverts commit 0151da23d605c7709d432ebfb17a337a5f662839.
David Corbett 242b5844 2024-09-15T14:43:55 [USE] Update the data files This uses the data files from <https://github.com/microsoft/font-tools/tree/1ffb9024b755313e661e8f492d87954856cc96a6/USE>.
Behdad Esfahbod 7a890c2e 2024-09-22T13:19:02 Add hb_barrier() to switches of unions https://github.com/harfbuzz/harfbuzz/pull/4864#issuecomment-2366923736
Behdad Esfahbod 7aace3d3 2024-09-23T07:47:24 Ignore CGJ and Mongolian Variation Selectors during GPOS Fixes https://github.com/harfbuzz/harfbuzz/issues/4869
Behdad Esfahbod 540666b8 2024-09-23T07:01:26 [paint] Err. Make previous commit actually work
Behdad Esfahbod ed636260 2024-09-23T07:00:41 [paint] Intersect clips
Behdad Esfahbod b0cf3d81 2024-09-23T06:50:59 [paint] Comment
Behdad Esfahbod 5e5cd10e 2024-09-22T12:36:51 Don't make variation-selectors default-ignorable if not-found set https://github.com/harfbuzz/harfbuzz/pull/4863#issuecomment-2366908261
Behdad Esfahbod b94a39d7 2024-09-22T08:23:34 Follow up to variation-selector-not-found glyph Addresses https://github.com/harfbuzz/harfbuzz/pull/4529#discussion_r1769638033 I'm not sure if this is an improvement. By leaving the var-selector as default-ignorable, ligatures can form around it, and the resulting cluster won't make it clear *which* base+var-selector could not be resolved... That doesn't quite help font fallback the way we want. Putting up for review.
Behdad Esfahbod 09589295 2024-09-22T13:01:18 [post] Add a hb_barrier()
Behdad Esfahbod 48774052 2024-09-22T13:00:09 [GDEF] Sprinkle some hb_barrier()s
Behdad Esfahbod e4e9f6a1 2024-09-22T11:17:48 [gsubgpos] Add a barrier Fixes https://github.com/harfbuzz/harfbuzz/issues/4852
Behdad Esfahbod 0dace9f3 2024-09-21T12:38:16 [PairPos] Forgo an optimization for the sake of compatibility Fixes https://github.com/harfbuzz/harfbuzz/issues/4797
Behdad Esfahbod 287046f7 2023-12-15T10:24:03 [buffer] Hook up not-found-variation-selector-glyph Fixes https://github.com/harfbuzz/harfbuzz/issues/4398
Behdad Esfahbod a003890e 2024-09-21T11:30:56 [buffer] Add hb_buffer_[sg]et_not_found_variation_selector_glyph() Unused.
Qunxin Liu 6fd76e1f 2024-09-17T13:50:10 [subset] offset format fix in gvar table
David Corbett c66f25ef 2024-09-14T11:47:56 [Unicode 16] Send the new scripts to USE
David Corbett 85a9ec89 2024-09-14T11:44:03 [Unicode 16] Update the USE table
David Corbett 87c685d3 2024-09-14T11:20:16 [Unicode 16] Update the vowel constraint table
David Corbett 7f325b6c 2024-09-14T11:19:04 [Unicode 16] Update the Indic table
David Corbett 554658e3 2024-09-14T11:08:37 [Unicode 16] Update the emoji table & cluster test
David Corbett dc3e005d 2024-09-14T11:03:26 [Unicode 16] Update the Arabic joining script list
David Corbett 351e20c2 2024-09-14T11:02:54 [Unicode 16] Update the Arabic table
David Corbett 42369b84 2024-09-14T11:00:48 [Unicode 16] Update the UCD table
David Corbett f279e258 2024-09-14T10:47:52 [Unicode 16] Add new `hb_script_t` values
David Corbett a5c9cc4e 2024-09-14T10:31:20 [USE, Unicode 16] Update the data files This uses the data files from <https://github.com/microsoft/font-tools/tree/0fbf022accc7c29afcf46262600175655baf4081/USE> and closes #4858.
Behdad Esfahbod 0a82f43a 2024-09-11T10:38:12 [arabic] Remove non-sensical code We were adding rclt after checking that the font doesn't have it!
Qunxin Liu a141e25c 2024-08-30T10:09:00 [subset] remove unnecessary check on name IDs See: https://learn.microsoft.com/en-us/typography/opentype/spec/features_ae The spec says they are expected to be in the font-specific name ID range (256–32767), though that is not a requirement in this Feature Parameters specification.
Behdad Esfahbod 2ba0b9ee 2024-08-29T11:41:28 Turn some byte data into unsigned char, from char Fixes https://github.com/harfbuzz/harfbuzz/issues/4844
Ebrahim Byagowi ea430c10 2024-08-23T17:38:49 [doc] Quote the table name
Ebrahim Byagowi 868a75b6 2024-08-22T18:31:45 [style][doc] Mention explicitly it goes through STAT table
Behdad Esfahbod 16c196e0 2024-08-22T15:45:41 Fix warnings with -fstrict-flex-arrays=2 Unfortunatley we cannot set it to 2 in hb.hh; but fix the warning and add it with default value of 1 anyway. Fixes https://github.com/harfbuzz/harfbuzz/pull/4836
Qunxin Liu 634778ef 2024-08-20T14:34:09 [subset] bug fix in post table insert retain-gid holes when retain-gids is enabled
Behdad Esfahbod cdbd966e 2024-08-18T10:42:52 [buffer-verify] Fix a compiler warning
Behdad Esfahbod a411de2b 2024-08-14T10:19:40 [cff] Try to silence static code analyzer Part of https://github.com/harfbuzz/harfbuzz/issues/4832
Qunxin Liu 72502ef0 2024-08-12T14:08:06 [instancer] dont return false when variation data is empty after partial instancing
Behdad Esfahbod 3894b1c9 2024-08-07T09:04:25 [face] Update docs for get_table_tags
Behdad Esfahbod 98355724 2024-08-06T11:55:08 [hb-coretext] Implement get_table_tags func Part of https://github.com/harfbuzz/harfbuzz/issues/4821
Behdad Esfahbod a459753e 2024-08-06T13:31:24 [test] Test get_table_tags of face_builder
Behdad Esfahbod 830326fe 2024-08-06T11:27:37 [hb-ft] Implement get_table_tags func Part of https://github.com/harfbuzz/harfbuzz/issues/4821
Behdad Esfahbod 76770eb0 2024-08-06T07:39:10 [face-builder] Implement get_table_tags func Part of https://github.com/harfbuzz/harfbuzz/issues/4821
Behdad Esfahbod ff04f28b 2024-08-06T07:22:04 [face] Add get_table_tags callback New API: +hb_get_table_tags_func_t +hb_face_set_get_table_tags_func() Towards fixing https://github.com/harfbuzz/harfbuzz/issues/4821 To be implemented by face-builder, FreeType, and CoreText backends.
Behdad Esfahbod e0c3cbf1 2024-08-06T06:46:44 [subset] Fail if source face has no glyphs Also return nullptr if any of the input pointers are nullptr. Before we were returning the empty face. Fixes https://github.com/harfbuzz/harfbuzz/issues/4824
Behdad Esfahbod 788b469a 2024-07-25T14:50:01 [ChainContext] Fix fast-path deviation from slow path See comments. The input skippy was hitting the U+200D and NOT seeing it skippable, whereas the context skippy would had. Fixes https://github.com/harfbuzz/harfbuzz/issues/4813
Dirk Lemstra 1c01944e 2024-07-20T11:21:49 Added forward declaration to fix build with Visual Studio 2017.
Ebrahim Byagowi 677d6646 2024-07-08T15:33:39 [subset] Make sure the clamp is done in a int64_t space Otherwise nags about things like this, In member function ‘int64_t graph::graph_t::vertex_t::modified_distance(unsigned int) const’, inlined from ‘void graph::graph_t::sort_shortest_distance()’ at ../src/graph/graph.hh:626:24: ../src/graph/graph.hh:371:20: warning: dangling pointer to an unnamed temporary may be used [-Wdangling-pointer=] 371 | hb_clamp (distance + distance_modifier (), (uint64_t) 0, (uint64_t) 0x7FFFFFFFFFF); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ And some of the CI bots fail also like this https://github.com/harfbuzz/harfbuzz/actions/runs/9838686960/job/27159310858?pr=4793 But it probably something else also can be improved which maybe is out of scope for this particular change.
Ebrahim Byagowi 495937f9 2024-07-08T14:46:48 [subset] Use hb_clamp instead of consequent hb_min and hb_max calls As just a minor code tweak to clarify the intention better.
Qunxin Liu e079dd20 2024-07-01T09:36:19 [instancer] remove the warning for CFF partial instancing Don't print from the library
Behdad Esfahbod 67c301fd 2024-06-27T23:47:48 [cmap] Fix macroman lookup Fixes https://github.com/harfbuzz/harfbuzz/issues/4774 Untested.
Khaled Hosny 9c03576c 2024-06-27T18:38:31 9.0.0
Khaled Hosny b461c422 2024-06-27T16:03:48 Fold the remaining Makefile.sources into CMakeLists.txt That is the only place where they are used now.
Khaled Hosny cf1fdf16 2024-06-27T06:54:02 Drop autotools build Fixes https://github.com/harfbuzz/harfbuzz/issues/4720
Qunxin Liu 93930fb1 2024-06-24T10:48:45 fix build with HB_TINY
Emanuel Czirai dce8e457 2024-06-24T22:54:31 typo `acsii` -> `ascii` in `hb-subset-input.cc`
Behdad Esfahbod 49c8493f 2024-06-20T11:16:40 [test] Build with HB_MINI Also add CONFIG.md instructions for building configs with meson. Fixes https://github.com/harfbuzz/harfbuzz/issues/4760
Garret Rieger 7946a284 2024-06-18T23:10:46 Move constant for max composite ops per glyph to hb-limits.hh
Garret Rieger 6289e475 2024-06-17T18:56:51 In _fill_unicode_and_glyph_map add a second unicode -> gid lookup which is general.
Behdad Esfahbod 2266d258 2024-06-14T18:19:34 Try fix fuzzer build on 32bit
Behdad Esfahbod a1c803df 2024-06-12T06:29:04 [limits] Increase number of glyf points Fixes https://github.com/harfbuzz/harfbuzz/issues/4752
Behdad Esfahbod de2a2f27 2024-06-08T15:46:31 Another try at fixing 32bit fuzzer build
Garret Rieger 7be12b33 2024-06-06T22:57:03 [subset] refactor populate_unicodes_to_retain. Pulls out commonly repeated pattern of filling the gid and unicode maps into a templated helper.
Behdad Esfahbod 0c2f5ecd 2024-06-06T14:05:56 [normalizer] Add c.override_decompose_and_compose
Behdad Esfahbod 8a9bc523 2024-06-06T13:56:33 [normalizer] Move a couple functions around
Behdad Esfahbod bda5f647 2024-06-06T13:52:44 [normalizer] Allow c->plan to be nullptr Might want it for subset closure.