Skip to content

[truetype] Restore behavior of ft_var_load_hvvar

Ben Wagner requested to merge bungeman/freetype:hvar_not_avar2 into master
  • src/truetype/ttgcvar.c (ft_var_load_hvvar): restore previous behavior

In a previous change [0] the behavior of ft_var_load_hvvar was changed to not load the item variation store if it was at offset 0, but not return an error when this happened. This broke any users, like tt_hvadvance_adjust, that rely on successful completion of ft_var_load_hvvar to imply that returned table's itemStore had been initialized. This lead such users to dereference NULL.

This change appears to have been unintentional and unrelated to the actual avar2 changes. As a result, fix these NULL dereferences by restoring the code to always attempt to initialize the itemStore.

[0] ae4eb996 "[truetype] Add support for avar table 2.0 format."

Reported as

https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53061

Merge request reports