> [...], after this commit, I am not abusing it to set pointer to
> code. I am abusing it to set a structure of four function pointers.
>
> Let me know if your concerns remain the same with this change.
His concerns stay the same. He doesn't like `multi-purpose' API calls
that do more than a single thing, and which use casts to various types
like the mentioned `ioctl' function. Having a structure certainly
reduces possible coding errors, but in the end there is still a cast
from one type to another, something that disables type checking on the
compiler level.
However, for the sake of consistency with other module controlling
stuff, I prefer it how you've implemented it.
Sure, not quite my problem... but does this mean one can crash FreeType-using apps by just setting an environment variable?
The current API of FreeType has many flaws, mainly due to its age.
Unfortunately, I'm bad at designing something completely new. In case
there are volunteers who are *seriously* interested in doing that to
modernize FreeType (producing a version 3 that doesn't need to be
compatible to version 2): Please come forward and show up!
Werner