-
Notifications
You must be signed in to change notification settings - Fork 480
[otData] Fix DeltaValue repeat value #3758
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The "" marker is used when a custom converter expects a list. For DeltaValues, we expect a list as a single value, not a list to be enumerated in XML. So, None is appropriate here. Cryptic, I know... Fixes #3757
Would be nice to add a test for this, but I don't have cycles for right now. |
wow.. the DeltaValue's conv.repeat field has been an empty string for 23 years and nobody noticed? 🤔 Just to confirm I understand, seeting it to fonttools/Lib/fontTools/ttLib/tables/otBase.py Lines 1148 to 1159 in b467579
|
I probably broke it in 2013: 7d13030 But yeah, wow!
Correct. |
In HarfBuzz-using systems we don't even bother delta-adjusting GPOS. |
I'll work on a test tomorrow |
I just checked, and DeltaValues are the only suspect of breakage from my change. The rest are intentional I believe:
|
44528fc
to
6d4f18b
Compare
LGTM. THanks. |
6d4f18b
to
5b3176f
Compare
I force-pushed so that the test now does a full roundtrip (XML->binary->XML) |
The "" marker is used when a custom converter expects a list. For DeltaValues, we expect a list as a single value, not a list to be enumerated in XML. So, None is appropriate here. Cryptic, I know...
Fixes #3757