freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] Upstreaming freetype diagnostics patches


From: Felipe Sanches
Subject: Re: [ft-devel] Upstreaming freetype diagnostics patches
Date: Sat, 9 Sep 2017 03:02:12 -0300

Hello, Werner,

I have adapted HinTak's b06 patch to address the globals usage issue that was originally brought up by Behdad. He had suggested moving those globals to FT_Library, but I did place the diagnostics callback into the FT_Face struct, instead. Let me know if that's good.

All the code that deals with those globals is at this specific commit:
https://github.com/felipesanches/freetype2/commit/dac77c3aeebbf2eee1647d3b95f5b5e3bf9d2db0

There are other additional commits in that repo because I was implementing some of the other checks based on the MS FontVal tests metadata. This was mostly to get used to the codebase. It would be better to wait for HinTak's other complementary patches instead of reimplementing it all twice, of course.

I still did not yet address the issue of the disagnostics IDs being strings instead of enums. I'mm probably do this next in a subsequent commit.

Let me know if you have any concern with the code change in the dac77c commit or if that's good enough for merging into freetype.

Happy Hacking,
Felipe Sanches

PS: For testing this I wrote a very minimal C program. Not sure if that's useful here, but I can publish that in some git repo as well as an example of a standalone client for that API. May be helpful for validating the enums once I get to that as well.

2017-09-07 11:31 GMT-03:00 Felipe Sanches <address@hidden>:

Felipe, you have to be aware that the target of FreeType is *not* font
validation.  For this reason some errors necessary by FontValidator
will never be reported by FreeType, which instead tries to understand
even malformed fonts as much as possible.


Yes, I'm fully aware of that and that's perfectly fine! The strategy here is to log the issues that freetype currently detects without causing any unnecessary burden on the code's primary goal.

Thanks for your kind words, Werner. For the sake of wrapping my head around it all, I've setup a git repo in which I applied HinTak's public patches on top of freetype's 2.6.4 tagged-commit. (I may at some point do the same to the tip of the master branch as well). There's nothing new there right now but I may possibly be adding further improvements to the code later in that repo.

https://github.com/felipesanches/freetype2

cheers,
Felipe Sanches


reply via email to

[Prev in Thread] Current Thread [Next in Thread]