[HarfBuzz] How harfbuzz handles memory alignment?

Ebrahim Byagowi ebraminio at gmail.com
Sun Nov 27 19:22:27 UTC 2016


didn't know about byte array alignment trick, thanks :)

On Sun, Nov 27, 2016 at 6:16 PM, Richard Wordingham <
richard.wordingham at ntlworld.com> wrote:

> On Sat, 26 Nov 2016 23:52:40 +0330
> Ebrahim Byagowi <ebraminio at gmail.com> wrote:
>
> > Hey guys, just like to know how harfbuzz handles memory alignment
> > without having even one #pragma pack around? Does `IntType`
> > <https://github.com/behdad/harfbuzz/blob/02bfd965af588640250c47f344ad30
> 96c8a373e0/src/hb-open-type-private.hh#L626>
> > handles padding somehow or harfbuzz copies its own structs? Thanks.
>
> If you look at the specialisations of struct BEInt immediately above
> in the same file, you'll see that the values are handled as arrays of
> unsigned bytes (type uint8_t).  Endianity and misalignment are handled
> together.
>
> One OpenType table that may contain misaligned data is the name table
> - nothing forces UTF-16 characters to be aligned on 2-byte boundaries,
> and I've seen fonts where it isn't so aligned.
>
> Richard.
> _______________________________________________
> HarfBuzz mailing list
> HarfBuzz at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/harfbuzz
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/harfbuzz/attachments/20161127/1b9f03a8/attachment.html>


More information about the HarfBuzz mailing list