src


Log

Author Commit Date CI Message
Behdad Esfahbod f02ebc89 2019-04-03T15:23:06 [array] Add compy assignment operator since copy constructor is explicit
Behdad Esfahbod 20a73da2 2019-04-03T14:32:15 [array] Add default copy constructor MSVC seems to need it.
Behdad Esfahbod d419a9a4 2019-04-03T14:18:19 [iter] Use different SFINAE scheme to make MSVC happy From Orvid King: TLDR; MSVC has some issues using sizeof(declval<T>()) for SFINAE of templated types, so I just used SFINAE in a different context where MSVC doesn't have the issue.
Behdad Esfahbod 2778df79 2019-04-03T14:15:01 [meta] Add hb_is_same()
Behdad Esfahbod 6215fb8e 2019-04-02T23:10:03 [serialize] Actually reclaim storage from duplicate objects
Behdad Esfahbod 3305a2ca 2019-04-02T22:42:22 [serialize] Port to use object pool Tested, but feels fragile :(.
Behdad Esfahbod 5efbc011 2019-04-02T22:41:06 [pool] Uses memset() instead of assigning Null() Assignment is invalid on invalid object.
Behdad Esfahbod 434d78bf 2019-04-02T21:46:40 Add hb_pool_t<> for pooled memory allocation
Behdad Esfahbod 8e4df1a1 2019-04-02T20:20:53 [serialize] Disable packed_map again Ugh. Need to think of something else.
Behdad Esfahbod 31c1a838 2019-04-02T20:17:27 [map] Protect more against pointer deref
Behdad Esfahbod 5bffa9e3 2019-04-02T20:13:16 More
Behdad Esfahbod 5b66b033 2019-04-02T19:27:02 [serialize] Fix hb_hashmap_t<> for pointers and use in packed_map
Behdad Esfahbod 42ab32cb 2019-04-02T18:41:33 [iter] Remove passing pointer to hb_iter() While doable with hb_deref_pointer() as well, we also would then need to do it in a ton of places. Not worth it / messy.
Behdad Esfahbod d0da547b 2019-04-02T18:22:39 [array] Use dagger for hashing array Also switch to better mixing.
Behdad Esfahbod b6f29bf1 2019-04-02T18:12:01 [iter] Accept pointers in hb_iter() No idea how to avoid dupicating code. Was hoping hb_deref_pointer() would do it, but looks like a pointer can't bind to a universal reference T&&. Humm.
Behdad Esfahbod fc24bb90 2019-04-02T17:49:52 [serialize] Towards maintaining packed_map
Behdad Esfahbod aa2293a5 2019-04-02T17:42:10 [serialize] Minor
Behdad Esfahbod e42b82c8 2019-04-02T17:21:54 [serialize] Handle non-nullable offsets
Behdad Esfahbod e04518ba 2019-04-02T17:20:04 [serialize] Movce empty-object handling earlier
Behdad Esfahbod 7f73c974 2019-04-02T17:12:24 [serialize] Minor
Behdad Esfahbod 5a3de4f4 2019-04-02T16:53:05 [serialize] Allow offset links that have base offset from the object base Rarely used, but used, in name table or similar constructs.
Ebrahim Byagowi edad6b2c 2019-04-03T00:48:59 [test][iter] minor, fix double promotion warning
Ebrahim Byagowi 062f5d6e 2019-04-02T20:27:00 [test] minor, c style comments
Ebrahim Byagowi afdbf960 2019-04-02T20:25:06 [iter][test] Add another test for hb_reduce Different initial and accumulator types
Behdad Esfahbod bfa02bef 2019-04-01T21:36:13 [serialize] Switch to tetris-packing
Behdad Esfahbod f0ea3ac1 2019-04-01T21:36:03 [serialize] Fix linking
Behdad Esfahbod 7c0e2054 2019-04-01T21:32:29 [serialize] Minor
Behdad Esfahbod 74addbec 2019-04-01T14:17:09 [serialize] Add default template type to push()
Behdad Esfahbod 64d0f089 2019-04-01T16:50:28 [cmap] Minor
Behdad Esfahbod 2e675cc7 2019-04-01T16:45:50 [subset] Call serialize start/end around it To be cleaned up.
Behdad Esfahbod abe33c61 2019-04-01T16:45:40 [serialize] Assert stack
Behdad Esfahbod 72e9b2c1 2019-04-01T16:17:30 [serialize] Add add_link() to add link
Ebrahim Byagowi b8642087 2019-04-02T00:30:06 [iter] hb_reduce, accumulator with a different type
Ebrahim Byagowi e526414c 2019-03-31T12:41:58 [iter] Implement hb_reduce
Behdad Esfahbod f3aca6aa 2019-03-31T21:37:14 [serialize] Implement linking Untested!
Behdad Esfahbod 17f0cfa7 2019-03-31T21:34:19 Move BEInt to hb.hh I knows...
Behdad Esfahbod 78fc43f2 2019-03-31T19:17:07 [iter] Fix up build, ouch Yeah, some things not very clear...
Jonathan Kew e5d6fe97 2019-03-31T19:17:32 Don't skip setting the .end field of the first range Fixes a bug in CoverageFormat2::serialize whereby the first range was not serialized correctly if it consists of only a single glyph ID. This broke shaping of U+0626 in the Arabic fallback shaper, because it is not found in the coverage table of the 'init' and 'medi' lookups. Also fix similar bug in ClassDefFormat2::serialize, noted during code inspection (I haven't observed a case that was actually affected by this, but it looks broken). Fixes https://github.com/harfbuzz/harfbuzz/issues/1504
Behdad Esfahbod 8a8d45b9 2019-03-31T19:00:09 [iter] Adjust hb_copy() and use it Untested.
Ebrahim Byagowi ba4b7be4 2019-03-31T01:32:30 Remove coretext_aat shaper (#1581) coretext_aat was a temporary shaper to redirect shaping of AAT fonts to CoreText and leaving the rest for HarfBuzz. As HarfBuzz now supports AAT and Chrome now actually ships that on a stable version on macOS, we no longer care about such use-case. If a client really wants 100% metrics compatibility with CoreText better to use it directly or through our API. Replicating the same behavior still is possible using hb_shape_full, something we don't care or like to offer anymore. Fixes https://github.com/harfbuzz/harfbuzz/issues/1478
Behdad Esfahbod d6005b49 2019-03-30T19:49:56 [serialize] Start implementing linking
Behdad Esfahbod 313b3057 2019-03-30T19:46:35 [serializer] Implement dedup!
Behdad Esfahbod b189bbc4 2019-03-30T19:41:48 Implement hashing of objects Should be improved for hb_bytes_t.
Behdad Esfahbod d6b28057 2019-03-30T19:31:51 Fix hb_hash(pointer)
Behdad Esfahbod d74dc3ef 2019-03-30T19:26:37 [serialize] Don't insert empty object into tree
Behdad Esfahbod 7fd82283 2019-03-30T19:16:20 [serialize] Towards maintaining hashmap
Behdad Esfahbod f254f45a 2019-03-30T19:05:51 [serialize] Only pack main object if there are other objects Avoids a memmove for tables that don't use the object packing mechanism.
Behdad Esfahbod 946d446f 2019-03-30T19:03:55 [serialize] Copy both sides of the buffer
Behdad Esfahbod 8512dc56 2019-03-30T19:01:23 [serialize] Simplify copy
Behdad Esfahbod 0b1fe7b7 2019-03-30T18:48:26 [serializer] Unbreak for now
Behdad Esfahbod 10f06223 2019-03-30T18:44:01 [map] Shuffle fini code
Behdad Esfahbod e6b78003 2019-03-30T18:33:30 [vector] Add move semantics
Behdad Esfahbod 4c4d3c3e 2019-03-30T18:30:50 [vector] Add some move and forwarding
Behdad Esfahbod 7c9ceabc 2019-03-30T18:19:36 [meta] Add hb_move and hb_forward ala std::
Behdad Esfahbod 9a19b885 2019-03-30T18:14:30 [serialize] Flesh out packing
Behdad Esfahbod 357c7c61 2019-03-30T18:13:57 [vector] Add copy constructor and assignment operator
Behdad Esfahbod 6f69c9d2 2019-03-30T18:00:03 [serialize] Minor
Behdad Esfahbod a4329019 2019-03-30T17:51:26 [serialize] Add packed_map
Behdad Esfahbod bed150bd 2019-03-30T17:26:35 [serialize] Start fleshing out object stack
Behdad Esfahbod 63c35651 2019-03-30T17:12:40 [serialize] Simplify propagate_error()
Behdad Esfahbod dbe9ba67 2019-03-30T17:10:59 [serialize] Add object_t, link_t, and snapshot_t
Behdad Esfahbod 38d57b9a 2019-03-30T16:38:06 [map] Add another TODO item
Behdad Esfahbod 7fd940f8 2019-03-30T16:29:19 [map] Add TODO
Behdad Esfahbod 6dcf7c40 2019-03-30T15:08:39 [serialize] Add unused 'tail'
Behdad Esfahbod fe05e480 2019-03-30T15:06:25 [serialize] Add ran_out_of_room
Behdad Esfahbod a7c63cd8 2019-03-30T14:59:40 Split sanitize and dispatch into their own files
Behdad Esfahbod be66b575 2019-03-30T14:53:54 Move serializer to hb-serialize.hh
Behdad Esfahbod bb22462f 2019-03-30T14:46:54 Whitespace
Behdad Esfahbod ef33b5d1 2019-03-30T14:39:21 [map] Deref pointers before equality check
Behdad Esfahbod c98f51da 2019-03-30T14:30:22 [map] Templatize hb_map_t Template name is hb_hashmap_t<K,V>.
Behdad Esfahbod 4b7f4dbc 2019-03-30T13:48:32 Add hb_deref_pointer()
Behdad Esfahbod e5306927 2019-03-29T23:31:07 [iter] Fix bug in hb_any() and hb_none()
Behdad Esfahbod f505b5d5 2019-03-29T22:55:02 [iter] Port remaining "for (auto" instances to daggers
Behdad Esfahbod 668d2d56 2019-03-29T22:48:38 [iter] One more dagger
Behdad Esfahbod d5145250 2019-03-29T22:48:12 [iter] Remove more wrong &&'s Sigh...
Behdad Esfahbod 05f2130a 2019-03-29T22:40:13 [iter] More daggers
Behdad Esfahbod 22ec4c3a 2019-03-29T22:27:46 [iter] More daggers
Behdad Esfahbod 688069bb 2019-03-29T22:17:31 [iter] One more dagger
Behdad Esfahbod 90b60bd6 2019-03-29T22:12:42 Remove HB_DEBUG_WOULD_APPLY Not that useful.
Behdad Esfahbod 4d28267e 2019-03-29T22:04:15 [iter] Port more to daggers
Behdad Esfahbod 9d8c7204 2019-03-29T21:59:28 Whitespace
Behdad Esfahbod 418e9d07 2019-03-29T21:57:26 Simplify code
Behdad Esfahbod f5ef8a73 2019-03-29T21:57:17 [iter] Port one more function to dagger
Behdad Esfahbod bcab098c 2019-03-29T21:49:18 [iter] Port more code to daggers
Behdad Esfahbod 4c75158e 2019-03-29T21:46:13 [iter] Port two more functions to daggers
Behdad Esfahbod e70ccbe9 2019-03-29T21:45:49 Fix pair signature Oh well. Again, who does fully understand what is right???
Behdad Esfahbod 6237b47f 2019-03-29T21:36:49 [iter] Add hb_unzip()
Behdad Esfahbod f1dad91e 2019-03-29T21:17:08 Whitespace
Behdad Esfahbod 896b3167 2019-03-29T21:16:30 [iter] Port two more loops to dagger
Behdad Esfahbod 8e34cb25 2019-03-29T21:14:20 [iter] Remove unneeded && Next commit needs this. I never fully get this, sigh.
Behdad Esfahbod 12a4c044 2019-03-29T21:06:10 Whitespace
Behdad Esfahbod 4c38a9f6 2019-03-29T20:23:07 Remove hb_assign() Not needed anymore. We just use operator= now.
Behdad Esfahbod b986c6a3 2019-03-29T20:17:46 [C++11] Remove IntType::set() in favor of operator=
Behdad Esfahbod 58ad3579 2019-03-29T20:05:19 [vector] Accept all types in push(...) Let assignment operator worry about conversion.
Behdad Esfahbod 489faf82 2019-03-29T20:01:37 [C++11] Use type aliases for template partial instantiations
Behdad Esfahbod 4fd02f6e 2019-03-29T17:57:59 Remove unused line
Behdad Esfahbod 9a5b15dc 2019-03-29T17:57:24 [C++11] Replace BEInt.set() with operator=
Behdad Esfahbod 0aa59b1d 2019-03-29T17:49:55 [C++11] Add operator= to IntType<> Now that we require C++11 we can do this.
Behdad Esfahbod eca466e6 2019-03-29T15:59:04 Err. Fixup C++11 polyfill removal Fixes 1d75db19fb5df139b9648ff3f5e6184a5c554345
Behdad Esfahbod 3f36c89f 2019-03-29T15:22:46 Inline explicit_operator macro Now that we require C++11, no need to macro.