Commit Graph

12472 Commits

Author SHA1 Message Date
Behdad Esfahbod c58bfa35fb [vector] Move semantics in vector remove() 2022-01-17 16:46:45 -07:00
Behdad Esfahbod 5946e945d5 [vector] Destruct in pop() 2022-01-17 16:46:45 -07:00
Behdad Esfahbod 7171917b52 [vector] Construct items when enlarging 2022-01-17 16:46:45 -07:00
Behdad Esfahbod 813eaba6ea [vector] Start adding destruction
Now we need to remove manual destruction, ouch!
2022-01-17 16:46:45 -07:00
Behdad Esfahbod 65a22836f8 [vector] Add XXX markers for remaining places that need work 2022-01-17 16:46:45 -07:00
Behdad Esfahbod 92f179075f Make hb_coerce static inline
That's the pattern we follow.

985b63b3ee (commitcomment-63973544)
2022-01-16 07:51:35 -07:00
Behdad Esfahbod 19793f333b Better try at previous commit
985b63b3ee (commitcomment-63973544)
2022-01-16 07:49:40 -07:00
Behdad Esfahbod 1173ed1f7f Try fix Mac build
985b63b3ee (commitcomment-63973544)
2022-01-16 07:48:02 -07:00
Behdad Esfahbod c0f57ccc88 [algs] Add default-construtor to hb_pair_t 2022-01-16 07:01:05 -07:00
luz paz e2e305066a Fix various typos
Found via `codespell -q 3 -S ./perf/texts -L actualy,ba,beng,fo,gir,inout,nd,ot,pres,ro,te,teh,timne`
2022-01-16 05:39:03 -08:00
Behdad Esfahbod 589bea15b7 Fix previous commit 2022-01-15 17:55:10 -07:00
Behdad Esfahbod b97e4f7084 Further adjust setlocale
Fixes https://github.com/harfbuzz/harfbuzz/issues/3375#issuecomment-1013783496
2022-01-15 17:47:51 -07:00
Behdad Esfahbod 63affc4eae [vector] Move semantics when resizing 2022-01-15 12:24:20 -08:00
Behdad Esfahbod 1c50106608 [meta] Include <memory>, for addressof
Fixes https://github.com/harfbuzz/harfbuzz/issues/3375
2022-01-15 13:09:06 -07:00
Behdad Esfahbod 71e6f742a8 [meta] Remove unused hb_ref() 2022-01-15 13:09:06 -07:00
Garret Rieger e30511a8de [map] Correct previous commit, if (...) was reversed. 2022-01-14 16:48:42 -08:00
Garret Rieger ff4e8c7eac [map] Fix bad memory access if hb_map.fini() was called twice. 2022-01-14 16:42:39 -08:00
Behdad Esfahbod 8a69e00639 [meta] Use std::addressof() instead of hb_addressof() 2022-01-13 16:17:34 -07:00
Behdad Esfahbod b7b0a15f7e [meta] Remove hb_add_const 2022-01-13 15:33:27 -07:00
Behdad Esfahbod 3b2e604237 [meta] Use std::is_const instead of hb_is_const 2022-01-13 15:32:46 -07:00
Behdad Esfahbod 909dde9df1 [meta] Use std::is_reference instead of hb_is_reference 2022-01-13 15:30:10 -07:00
Behdad Esfahbod 47afb3ef04 [meta] Replace hb_is_pointer with std::is_pointer 2022-01-13 15:27:41 -07:00
Behdad Esfahbod 956e0a4d13 [map] Destruct objects 2022-01-13 15:07:10 -07:00
Jussi Pakkanen 726b1a8b2d Convert fallback kwargs to [provide] entries. 2022-01-13 13:25:16 -08:00
Behdad Esfahbod bc0a5fdf43 [test-map] Add disabled tests with std::string 2022-01-13 13:34:22 -07:00
Behdad Esfahbod 985b63b3ee [map] Allow invalid items to be pointer to static object
By derefencing them when necessary.

Also, we do not rely on trivially-copyable, so remove that assertion.
2022-01-13 13:33:07 -07:00
Behdad Esfahbod 98b26eedf5 [check-static-inits] Only check library object files 2022-01-13 13:12:10 -07:00
Behdad Esfahbod 1e27f95dc1 [algs] Add hb_coerce() 2022-01-13 13:10:47 -07:00
Behdad Esfahbod 5a91db1135 [map] Remove constexpr invalid items
These were non-workable in the general case, eg std::string.
2022-01-13 12:44:48 -07:00
Behdad Esfahbod 114046dc27 [map] Construct objects 2022-01-13 12:38:26 -07:00
Matthias Clasen b15e497d4d Fix the docs build
This was inadvertendly broken in f956ecdbaf.
Sorry
2022-01-13 12:19:05 -07:00
Behdad Esfahbod ca4f56bdc7 [map] Massage some more
Towards being able to store arbitrary types.
2022-01-13 12:18:59 -07:00
Behdad Esfahbod cfe2b66114 [algs] Fix hash chaining to std::hash() 2022-01-13 12:18:59 -07:00
Garret Rieger 87496bf63e [subset] fix fuzzer timeout if visisted_paint goes into error. 2022-01-13 11:08:24 -08:00
Matthias Clasen 4ced2e8a8a docs: Add some details
Mention immutability in the object model section.
2022-01-13 10:54:24 -08:00
Matthias Clasen bb330c6aa6 docs: Fix a typo 2022-01-13 10:54:24 -08:00
Behdad Esfahbod 16cfe34ae8 [git.mk] Update 2022-01-13 11:01:39 -07:00
Khaled Hosny 0acf466c44 [doc] Fix hb_font_set_synthetic_slant param name 2022-01-13 01:29:30 +02:00
Behdad Esfahbod 0b2c514fb4 More macro cleanup 2022-01-12 11:20:58 -07:00
Behdad Esfahbod 0a42f46ce9 Fix compiler warning
Fixes https://github.com/harfbuzz/harfbuzz/issues/3364
2022-01-12 11:16:17 -07:00
Matthias Clasen 72f0b24ee3
docs: Clarify variation apis (#3363)
Make it explicit that the variations setters
replace all existing variations, even if
not all axes are included in the provided
values.

Co-authored-by: Matthias Clasen <mclasen@redhat.com>
2022-01-12 11:08:02 -07:00
Matthias Clasen befe3b5d5a
color: Document empty returns (#3362)
Document that the SVG and PNG getters return
the singleton empty blob if the glyph has no
color.

Fixes: #1413

Co-authored-by: Matthias Clasen <mclasen@redhat.com>
2022-01-12 11:07:25 -07:00
Behdad Esfahbod 13643934aa Clean up HB_NO_SETLOCALE
https://github.com/harfbuzz/harfbuzz/pull/3358#pullrequestreview-850500143
2022-01-12 10:54:28 -07:00
Behdad Esfahbod 53847dba92 [algs] Call std::hash from hb_hash() 2022-01-12 10:35:28 -07:00
Behdad Esfahbod 74811c501d [map] Map == / != use correct types 2022-01-12 10:35:28 -07:00
Timo Suoranta b8c2c1ab37
Use freetype from CMake target when present (#3361)
Add check for Freetype CMake target. If it is found:
- enable HB_HAVE_FREETYPE option
- add HAVE_FREETYPE=1 define
- bypass finding Freetype as cmake package
- add Freetype CMake target as dependency to harfbuzz
2022-01-11 05:14:44 -07:00
Behdad Esfahbod ce7f19a2cc Revert "[map] Actually use k/v invalid types for declaration!"
This reverts commit 6f559346ac.

Err. My bad.
2022-01-10 14:40:27 -07:00
Behdad Esfahbod 6f559346ac [map] Actually use k/v invalid types for declaration! 2022-01-10 14:29:36 -07:00
Behdad Esfahbod a45a630539
Fix unintentional locale dependency (#3358)
Avoid unintentional locale dependency

hb_variation_to_string uses sprintf with %g, which will produce
a locale-dependent decimal point, which is not desired here.

The output is supposed to be compatible with CSS syntax, and
that always uses '.' for the decimal point.

Fix this by changing the per-thread locale to "C" around sprintf call.

Fixes https://github.com/harfbuzz/harfbuzz/issues/3355
Fixes https://github.com/harfbuzz/harfbuzz/pull/3357
Fixes https://github.com/harfbuzz/harfbuzz/pull/3358

Co-authored-by: Matthias Clasen <mclasen@redhat.com>
2022-01-08 16:47:33 -07:00
Matthias Clasen d70825a6d1 docs: Add some details about coordinates
Mention what the effective values are when
coordinates have not been set.
2022-01-08 06:46:22 -08:00