Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| e6bbf112 | 2023-01-03 12:35:48 | [buffer] Better document set_content_type Fixes https://github.com/harfbuzz/harfbuzz/issues/4000 | ||
| f2297e69 | 2022-11-25 11:33:00 | [buffer] Documentation Fixes https://github.com/harfbuzz/harfbuzz/issues/3889 | ||
| 54ae3345 | 2022-11-24 11:59:50 | [buffer] Improve documentation of hb_buffer_add_codepoints() Fixes https://github.com/harfbuzz/harfbuzz/issues/3889 | ||
| 3b43096e | 2022-11-23 22:04:02 | [buffer] Whitespace | ||
| 094f8073 | 2022-11-23 22:03:26 | [buffer] Handle null buffer in set_message_func | ||
| 404cb99d | 2022-11-23 15:35:14 | [buffer-diff] Fix check for glyph flag equality I'm not sure if the old behavior was intentional, but it was checking that the glyph flags were a subset of the reference buffer's glyph flags. I don't see why that is useful. Fix that. Then make the buffer-verify code ignore flag differences when verifying buffers, since our unsafe-to-concat flag at least, is conservative and not guaranteed to be produced the same in fragments. See: https://github.com/harfbuzz/harfbuzz/issues/3888 | ||
| 59c45f6d | 2022-11-22 12:54:50 | Use hb_memcpy instead of memcpy consistently | ||
| ac0efaf8 | 2022-11-22 12:50:36 | Use hb_memset instead of memset consistently | ||
| 4c14043b | 2022-11-21 12:56:33 | [algs] Add output argument to hb_unsigned_mul_overflows() | ||
| ed43bc51 | 2022-11-20 13:10:19 | [buffer] Move delete_glyphs_inplace() here | ||
| 1945b400 | 2022-07-25 10:45:55 | [cpluscplus] Wrap hb-subset types as well Also changes signature of get_user_data of hb.h types to take const object. This is safe. | ||
| 0722b627 | 2022-07-24 17:35:44 | [buffer] Return delta from sync_so_far | ||
| c55c0197 | 2022-03-21 19:11:17 | [buffer] Add assertions of buffer sync status to message_impl | ||
| da9edce8 | 2022-03-21 18:51:01 | [buffer] Add sync_so_far() This removes separate out-buffer, at the cost of possibly changing idx. | ||
| 98e90cc6 | 2022-06-30 08:43:57 | [docs] Reduce warnings Use markdown syntax for inline code blocks instead of %true, %false, and %NULL. | ||
| 689c7753 | 2022-06-10 07:37:45 | [buffer] Actually remove TODO item In reality, one side is smaller and one side is larger. The existing code handles that just fine. | ||
| d09e962b | 2022-06-10 07:35:16 | [buffer] Update a TODO item | ||
| f78a2509 | 2022-06-05 00:55:35 | [gi] Remove Xconstructor annotations | ||
| 55b911d8 | 2022-06-01 08:13:06 | [buffer] Mark getter functions as taking const buffer Fixes https://github.com/harfbuzz/harfbuzz/issues/2873 | ||
| e246723f | 2022-06-01 04:54:18 | [shape] Fail shaping internally if buffer ops exceeded | ||
| 9c0c31df | 2022-05-31 09:35:49 | [buffer] When deleting glyphs, check cluster backwards as well | ||
| f7f61aeb | 2022-05-31 09:37:38 | [buffer] Add TODO item | ||
| 9a2a8570 | 2022-05-31 04:25:20 | [ot-shape] Don't verify buffer if shaping failed Fixes all of fuzzing verify failures, which were result of buffer failure on super-long results, which fails unsafe-to-break because shorter strings don't fail shaping. | ||
| 2e186d9f | 2022-05-20 13:15:52 | [buffer] Improve hash function of segment_properties_t | ||
| d35c73cd | 2022-03-22 10:20:28 | [buffer] Whitespace | ||
| 03085132 | 2022-03-21 18:06:33 | [buffer] Fix out-buffer under memory-alloc failure This was broken in July refactoring of the buffer, and exposed to ReverseChainSingleSubstFormat1 in 3807061d634b60bd6235d6e1d8c47a034377f924 Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=38800 https://bugs.chromium.org/p/chromium/issues/detail?id=1303552 | ||
| b263371b | 2022-02-12 15:06:47 | Merge pull request #3398 from harfbuzz/buffer-verify Add HB_BUFFER_FLAG_VERIFY | ||
| 98da3306 | 2022-01-31 18:12:01 | 3.3.0 | ||
| 7c704d89 | 2022-01-28 12:38:32 | [buffer] Make hb_buffer_append() take a const argument | ||
| d98a0fc8 | 2021-12-04 20:43:27 | [buffer] Consolidate glyph-flags implementation | ||
| f91ce56e | 2021-12-04 20:07:05 | [buffer] Add default cluster value in find_min_cluster | ||
| 56d08195 | 2021-12-04 19:59:55 | [buffer] Rename _unsafe_to_break_set_mask to _infos_set_glyph_flags | ||
| 3122c2cd | 2021-12-04 19:50:33 | [buffer] Add HB_GLYPH_FLAG_UNSAFE_TO_CONCAT Fixes https://github.com/harfbuzz/harfbuzz/issues/1463 | ||
| bea5369c | 2022-01-04 10:52:05 | [buffer] Rename swap_buffers() to sync() | ||
| d1e7df5c | 2022-01-04 07:32:04 | [buffer] Add enter()/leave() pair around shape() | ||
| 43be5ba4 | 2022-01-04 07:26:53 | [buffer] Group shape-related members together | ||
| 52f5711e | 2022-01-03 11:57:42 | [buffer] Add hb_buffer_create_similar() Fixes https://github.com/harfbuzz/harfbuzz/issues/1555 | ||
| f643b81f | 2022-01-03 11:45:31 | [buffer] Clean up internal state bookkeeping hb_buffer_reset() was NOT resetting cluster_level. Ouch! Fix that. Part of https://github.com/harfbuzz/harfbuzz/issues/1555 | ||
| 36e9f467 | 2022-01-03 11:23:14 | [buffer] Overlay segment-properties in hb_buffer_append() Part of https://github.com/harfbuzz/harfbuzz/issues/1555 | ||
| 6a669928 | 2022-01-03 11:21:29 | Add hb_segment_properties_overlay() New API: + hb_segment_properties_overlay() | ||
| 1b78e04c | 2021-12-10 12:45:43 | [buffer] Add ::reverse_groups() | ||
| 4cd96e73 | 2021-12-10 12:33:21 | [buffer] Inline revers_range() / reverse() | ||
| 70f8c57e | 2021-12-04 19:49:23 | [buffer] Rename find_min_cluster | ||
| 77eeec53 | 2021-11-03 23:31:03 | 3.1.0 | ||
| da500568 | 2021-10-26 08:02:29 | [API] Add hb_buffer_[sg]et_not_found_glyph() and --not-found-glyph Instead of using gid=0 when a character is not found in the font, client can now set a custom value. This is useful for shaper-driven font fallback and to differentiate that from .notdef glyph. Fixes https://github.com/harfbuzz/harfbuzz/issues/1360 | ||
| 4b5a81f1 | 2021-08-25 15:20:54 | [buffer] Fix hb_buffer_append() pre/post-context logic Part of https://github.com/harfbuzz/harfbuzz/pull/3150 | ||
| 430224b1 | 2021-08-16 15:40:47 | [buffer] Handle pre/post-context in buffer_append Fixes https://github.com/harfbuzz/harfbuzz/issues/1843 | ||
| 09c3b82f | 2021-07-29 17:49:10 | [buffer] When shifting forward, leave no gap Trying to see if this fixes the fuzzer issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=36236 | ||
| 3e266e5f | 2021-07-12 17:30:26 | [buffer] Update comments | ||
| 3807061d | 2021-07-12 17:02:03 | [ot-layout] Don't remove_output() before reverse substitution No need anymore, because of new swap_buffers() semantics. Just assert instead. | ||
| 10a9960f | 2021-07-12 17:09:03 | [buffer] Restructure swap_buffers() Is more of a "commit" operation now. Will rename when ready. | ||
| 05c17787 | 2021-07-12 16:55:08 | [buffer] Rewind cursor in clear_output() | ||
| 69310f14 | 2021-07-09 17:24:29 | [buffer] Change nil buffer have_output to false Seems like a historical artefact that it was true. | ||
| 2337f0d0 | 2021-07-08 10:58:50 | Internally use hb_malloc/.../hb_free instead of malloc/.../free Redefining those stock names as macros was conflicting with gcc 10 headers. Fixes https://github.com/harfbuzz/harfbuzz/issues/3044 | ||
| 93e6a9bc | 2021-06-15 15:38:49 | Revert "Remove unneeded buffer clear_output / remove_output calls" This reverts commit 06175b71433bc42edc07d342e6354035e37fb5fd. One of the sanitizers is failing. Pushing again as PR to debug. I have suspicions. | ||
| 06175b71 | 2021-06-15 14:33:27 | Remove unneeded buffer clear_output / remove_output calls Made sure clear_output is always paired with swap_buffers. Trying to see if we can move towards RAII-like buffer iterators instead of the buffer keeping an iterator internally. | ||
| c61ce962 | 2021-06-10 17:33:29 | [buffer] In hb_buffer_get_positions(), return NULL if inside message callback As discussed in https://github.com/harfbuzz/harfbuzz/issues/2468#issuecomment-645666066 Part of fixing https://github.com/harfbuzz/harfbuzz/issues/2468 | ||
| 34a1204f | 2021-03-15 14:39:06 | [buffer] HB_NODISCARD output_glyph() Also, generalize and use replace_glyphs() in morx where output_glyph() was used in a loop. | ||
| b05e5d9a | 2021-03-15 14:08:08 | [buffer] HB_NODISCARD next_glyphs() | ||
| 05d2d37f | 2021-03-15 13:43:29 | [buffer] HB_NODISCARD ensure() | ||
| 906c9928 | 2021-03-15 13:13:45 | [buffer] Return success status from buffer ops that can fail Previous error-handling philosophy was that user doesn't need to immediately know whether operation failed. But as can be seen after we added malloc-failing fuzzing, there's just so many places in the code that a failure of these operations needs to be mitigated before further operations. So I'm moving towards returning success here, and possibly making it nodiscard. | ||
| 2d39031f | 2020-06-28 20:48:48 | [buffer/set/map] Move immutable check only to C API boundary The immutable objects are a concept only enforced by the C API. So move checks only to that region. This does assume that the rest of the code is careful not getting into these internal methods on immutable objects, which something we do, but have no way of enforcing (currently). . | ||
| 21433fa5 | 2020-06-28 20:46:02 | m[buffer] In hb_buffer_append() don't change until allocation success | ||
| 3b91e0b5 | 2020-06-28 20:33:54 | m[buffer] Rename internal variable | ||
| 9fcba109 | 2020-06-28 20:30:39 | [buffer] Make swap_buffers() copy rest | ||
| 9936490c | 2020-12-31 00:19:29 | [docs] Invalid use of "optional" annotation It is valid only for out and inout parameters. Fixes https://github.com/harfbuzz/harfbuzz/issues/1787 | ||
| 2fdab788 | 2020-12-30 23:44:30 | [docs] Complete hb-buffer docs a bit | ||
| cb319f0d | 2020-12-24 21:47:05 | [docs] Add some missing annotations to hb-buffer.cc | ||
| f88e845f | 2020-12-24 21:28:37 | [docs] Minor fixes | ||
| e8de26e1 | 2019-04-21 20:31:54 | [docs] Add gtkdoc comments to hb-buffer | ||
| 71a3b54f | 2020-12-23 15:33:15 | 2.7.3 | ||
| 77e704d1 | 2020-10-15 02:02:04 | [buffer] Add assert_unicode()/assert_glyphs() and use internally | ||
| 3232e6f2 | 2020-10-15 00:20:17 | [buffer] Add hb_buffer_has_positions() Fixes https://github.com/harfbuzz/harfbuzz/issues/2716 | ||
| 48ad7459 | 2020-07-29 08:09:08 | [ENOMEM] Fix buffer's content check logic So now rest of shape fuzzer also can be enabled. Fixes #2571 | ||
| d0e2addd | 2020-07-18 22:14:52 | minor | ||
| 2dda6dd7 | 2020-04-20 14:12:45 | minor, tweak spacing turn 8 spaces to tab, add space before Null/Crap | ||
| 14a7b6f1 | 2020-02-26 15:09:04 | Set hb_buffer_t to use array_t.reverse(). | ||
| b79ceac3 | 2019-12-15 16:50:01 | Prefer UINT_MAX instead of uint overflow. Also, prefer HB_FEATURE_GLOBAL_START and HB_FEATURE_GLOBAL_END. | ||
| b618e0ae | 2019-12-15 16:26:50 | Remove non-breaking spaces from comments. `0xC2A0` was used, for some reasons. It's not really a problem, but Qt Creator constatly trying to replace them with regular spaces, so I have to edit those files separately. | ||
| 780d640c | 2019-12-15 16:11:37 | Remove unnecessary check in hb_buffer_t::set_masks. Bounds are already checked by the caller. Closes #2073 | ||
| 5fddc5f1 | 2019-11-20 13:07:26 | Use foreach_cluster | ||
| 029775bc | 2019-10-09 11:00:09 | [buffer] Minor; improve HB_NO_BUFFER_MESSAGE | ||
| 670fec23 | 2019-10-10 09:21:08 | Minor, add a zero length tolerant memset, hb_memset | ||
| e6909ee5 | 2019-09-18 22:12:25 | minor | ||
| bfb155a5 | 2019-09-18 00:44:52 | Don't call memset when length is zero Fixes this -fno-sanitize-recover=undefined check, /buffer/positions/empty: hb-buffer.cc:327:11: runtime error: null pointer passed as argument 1, which is declared to never be null /usr/include/string.h:60:62: note: nonnull attribute specified here #0 0x4cf31c in hb_buffer_t::clear_positions() /home/user/code/harfbuzz/src/hb-buffer.cc:327:3 #1 0x4d4dd4 in hb_buffer_get_glyph_positions /home/user/code/harfbuzz/src/hb-buffer.cc:1418:13 #2 0x4cb553 in test_buffer_positions /home/user/code/harfbuzz/test/api/test-buffer.c:305:3 #3 0x7f324187bf49 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x72f49) #4 0x7f324187be7a (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x72e7a) #5 0x7f324187be7a (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x72e7a) #6 0x7f324187c121 in g_test_run_suite (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x73121) #7 0x7f324187c140 in g_test_run (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x73140) #8 0x4c8bd3 in hb_test_run /home/user/code/harfbuzz/test/api/./hb-test.h:88:10 #9 0x4c8bd3 in main /home/user/code/harfbuzz/test/api/test-buffer.c:884:10 #10 0x7f324086db96 in __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:310 #11 0x41e919 in _start (/home/user/code/harfbuzz/test/api/test-buffer+0x41e919) | ||
| a0b4ac4d | 2019-08-24 17:57:14 | Turn 8 spaces to tab across the project According to the current code style of the project | ||
| 7f3b409e | 2019-06-20 14:24:43 | Fix build with -O0 message_impl was not defined. That causes trouble if compiler didn't optimize the unreachable call out... | ||
| eb9798ef | 2019-06-18 13:29:55 | [config] Dont' compile buffer message API if HB_NO_BUFFER_MESSAGE Part of https://github.com/harfbuzz/harfbuzz/issues/1652 | ||
| c7439d4e | 2019-06-05 12:13:49 | Slightly massage buffer-messaging commit Saves a few bytes. | ||
| 815f002b | 2019-06-05 10:38:06 | Don't use vsnprintf when HB_NO_BUFFER_MESSAGE is defined | ||
| 41248cce | 2019-05-07 20:54:31 | Remove MIN/MAX in favor of hb_min/hb_max | ||
| e4120085 | 2018-12-17 21:31:01 | Remove redundant void from C++ sources (#1486) | ||
| 7ee5c523 | 2018-12-12 15:14:37 | minor style fix, use void in methods on no argument | ||
| 93ef20a8 | 2018-11-03 15:03:06 | Replace most uses of is_inert with is_immutable | ||
| cf5fa57f | 2018-10-27 04:50:38 | [docs] Change section titles again I think I like the uniform "hb-*" more. | ||
| 5dd86aa3 | 2018-10-27 04:28:40 | [docs] Rename section titles to object names More useful. | ||
| 00cf4e5e | 2018-10-27 04:07:33 | [docs] Fill in some sections | ||
| 8d304ef7 | 2018-10-16 19:04:48 | [utf] Add UTF16-BE and UTF32-BE | ||
| 3d9a0306 | 2018-10-18 05:58:17 | 2.0.0 | ||
| 2e7c7165 | 2018-10-16 18:35:03 | [buffer] Add an assert See if it helps debugging https://bugs.chromium.org/p/chromium/issues/detail?id=895117 |