Drop any SVG table from downloaded fonts if OpenType-SVG rendering is disabled
Categories
(Core :: Graphics: Text, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox108 | --- | fixed |
People
(Reporter: jfkthame, Assigned: jfkthame)
Details
Attachments
(1 file)
The presence of this table can make Core Text font operations really expensive, so if rendering OT-SVG is preffed off, we should drop it entirely.
Assignee | ||
Comment 1•3 years ago
|
||
This makes e.g. https://nabla.typearture.com/ perform VASTLY better on macOS if OT-SVG is preffed off;
without it, we get bogged down in Core Text internally parsing all the SVG when all we want are the
TrueType outlines.
Updated•3 years ago
|
Comment 3•3 years ago
|
||
backed out for causing reftest failures on svg-glyph-basic.svg
- backout: https://hg.mozilla.org/integration/autoland/rev/09e22ea3939a17f19a768c99bd3bd569a2cf255f
- push: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&selectedTaskRun=dvWnR2GtT_C8PZ69UUa1lg.0&revision=d1dd198481d0f0b09a7dd3b36578c5ad083b8eca
- push where perma failures were spotted: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&selectedTaskRun=DXZiE9RRRiOIUD4mDFlCaQ.0&revision=6ad89191af5500503dd6437c0ad43ee03bc38a19&searchStr=reftest
- failure log: https://treeherder.mozilla.org/logviewer?job_id=394570995&repo=autoland&lineNumber=15575
[task 2022-10-27T16:44:08.461Z] 16:44:08 INFO - REFTEST TEST-START | layout/reftests/text-svgglyphs/svg-glyph-basic.svg == layout/reftests/text-svgglyphs/svg-glyph-basic-ref.svg
[task 2022-10-27T16:44:08.467Z] 16:44:08 INFO - REFTEST INFO | RESTORE PREFERENCE pref(gfx.font_rendering.opentype_svg.enabled,true)
[task 2022-10-27T16:44:08.469Z] 16:44:08 INFO - REFTEST TEST-LOAD | file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/text-svgglyphs/svg-glyph-basic.svg | 1 / 29 (3%)
[task 2022-10-27T16:44:08.972Z] 16:44:08 INFO - REFTEST TEST-LOAD | file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/text-svgglyphs/svg-glyph-basic-ref.svg | 1 / 29 (3%)
[task 2022-10-27T16:44:09.105Z] 16:44:09 INFO - REFTEST INFO | REFTEST fuzzy test (0, 0) <= (255, 29726) <= (1, 200)
[task 2022-10-27T16:44:09.367Z] 16:44:09 INFO - REFTEST TEST-UNEXPECTED-FAIL | layout/reftests/text-svgglyphs/svg-glyph-basic.svg == layout/reftests/text-svgglyphs/svg-glyph-basic-ref.svg | image comparison, max difference: 255, number of differing pixels: 29726
Assignee | ||
Comment 4•3 years ago
|
||
Ugh, I think what's happening here is that we first run a test with the pref disabled, and this causes the webfont resource to be cached without its SVG table; then the following tests use that cached resource, and fail.
Maybe we should flush the webfont cache when the pref changes. But in practice it's probably not really important. For reftest purposes, I think we can just defeat the caching by adding a query parameter to the font URL. I'll run that through try to check.
Comment 6•3 years ago
|
||
bugherder |
Description
•