RESOLVED FIXED221356
Supplementary code points (U+10000 - U+10FFFF) are not shaped correctly in the fast text codepath
https://bugs.webkit.org/show_bug.cgi?id=221356
Summary Supplementary code points (U+10000 - U+10FFFF) are not shaped correctly in th...
Myles C. Maxfield
Reported 2021-02-03 13:27:43 PST
Supplementary code points (U+10000 - U+10FFFF) are not shaped correctly in the fast text codepath
Attachments
Needs test (1.87 KB, patch)
2021-02-03 13:31 PST, Myles C. Maxfield
ews-feeder: commit-queue-
Patch (3.63 KB, patch)
2021-02-03 15:42 PST, Myles C. Maxfield
no flags
Patch (3.63 KB, patch)
2021-02-03 15:46 PST, Myles C. Maxfield
zalan: review+
ews-feeder: commit-queue-
Patch for committing (4.07 KB, patch)
2021-02-03 20:19 PST, Myles C. Maxfield
no flags
Myles C. Maxfield
Comment 1 2021-02-03 13:31:06 PST
Created attachment 419182 [details] Needs test
Myles C. Maxfield
Comment 2 2021-02-03 13:31:41 PST
Myles C. Maxfield
Comment 3 2021-02-03 15:42:39 PST
Myles C. Maxfield
Comment 4 2021-02-03 15:46:05 PST
EWS
Comment 5 2021-02-03 17:53:06 PST
Found 18 new test failures: fast/text/complex-small-caps-non-bmp-capitalize.html, fast/text/multiple-codeunit-vertical-upright-2.html, fast/text/multiple-codeunit-vertical-upright.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-bold-fraktur.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-bold-italic.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-bold-sans-serif.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-bold-script.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-fraktur.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-initial.html, imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-looped.html ...
Myles C. Maxfield
Comment 6 2021-02-03 20:19:57 PST
Created attachment 419223 [details] Patch for committing
Darin Adler
Comment 7 2021-02-04 12:15:47 PST
Comment on attachment 419198 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=419198&action=review > Source/WebCore/platform/graphics/WidthIterator.cpp:265 > + if (character >= 0x10000) I think it would be more elegant if this used U_IS_SUPPLEMENTARY or !U_IS_BMP. Not really sure how much we want to lean into using the semantically more clear macros over the mechanically more clear numeric comparisons.
Darin Adler
Comment 8 2021-02-04 12:17:36 PST
Comment on attachment 419198 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=419198&action=review >> Source/WebCore/platform/graphics/WidthIterator.cpp:265 >> + if (character >= 0x10000) > > I think it would be more elegant if this used U_IS_SUPPLEMENTARY or !U_IS_BMP. Not really sure how much we want to lean into using the semantically more clear macros over the mechanically more clear numeric comparisons. Or maybe this should be checking advanceLength or clusterLength (they are the same, why do we have both?) instead of character?
Myles C. Maxfield
Comment 9 2021-02-04 12:20:28 PST
(In reply to Darin Adler from comment #7) > Comment on attachment 419198 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=419198&action=review > > > Source/WebCore/platform/graphics/WidthIterator.cpp:265 > > + if (character >= 0x10000) > > I think it would be more elegant if this used U_IS_SUPPLEMENTARY or > !U_IS_BMP. Not really sure how much we want to lean into using the > semantically more clear macros over the mechanically more clear numeric > comparisons. I actually already did this in the patch for committing :)
Darin Adler
Comment 10 2021-02-04 13:05:01 PST
(In reply to Myles C. Maxfield from comment #9) > I actually already did this in the patch for committing :) Excellent!
EWS
Comment 11 2021-02-04 13:28:34 PST
Committed r272379: <https://trac.webkit.org/changeset/272379> All reviewed patches have been landed. Closing bug and clearing flags on attachment 419223 [details].
Note You need to log in before you can comment on or make changes to this bug.