Bug 199912

Summary: [iOS] Fast and complex text codepaths disagree about how to lay out bopomofo with tone marks
Product: WebKit Reporter: Myles C. Maxfield <mmaxfield>
Component: New BugsAssignee: Myles C. Maxfield <mmaxfield>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, dino, ews-watchlist, jonlee, megan_gardner, rniwa, simon.fraser, thorton, webkit-bug-importer, wenson_hsieh
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
simon.fraser: review+, ews-watchlist: commit-queue-
Archive of layout-test-results from ews101 for mac-highsierra
none
Archive of layout-test-results from ews105 for mac-highsierra-wk2
none
Archive of layout-test-results from ews123 for ios-simulator-wk2
none
Archive of layout-test-results from ews115 for mac-highsierra
none
Patch for committing
none
Patch for committing none

Myles C. Maxfield
Reported 2019-07-18 11:41:27 PDT
[iOS] Fast and complex text codepaths disagree about how to lay out bopomofo with tone marks
Attachments
Patch (6.73 KB, patch)
2019-07-18 11:43 PDT, Myles C. Maxfield
no flags
Patch (6.67 KB, patch)
2019-07-18 11:52 PDT, Myles C. Maxfield
simon.fraser: review+
ews-watchlist: commit-queue-
Archive of layout-test-results from ews101 for mac-highsierra (3.28 MB, application/zip)
2019-07-18 13:00 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews105 for mac-highsierra-wk2 (2.82 MB, application/zip)
2019-07-18 13:09 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews123 for ios-simulator-wk2 (3.34 MB, application/zip)
2019-07-18 13:59 PDT, EWS Watchlist
no flags
Archive of layout-test-results from ews115 for mac-highsierra (3.29 MB, application/zip)
2019-07-18 14:15 PDT, EWS Watchlist
no flags
Patch for committing (12.03 KB, patch)
2019-07-18 19:28 PDT, Myles C. Maxfield
no flags
Patch for committing (13.20 KB, patch)
2019-07-19 13:18 PDT, Myles C. Maxfield
no flags
Myles C. Maxfield
Comment 1 2019-07-18 11:43:39 PDT
Myles C. Maxfield
Comment 2 2019-07-18 11:43:41 PDT
Myles C. Maxfield
Comment 3 2019-07-18 11:52:01 PDT
Simon Fraser (smfr)
Comment 4 2019-07-18 12:14:32 PDT
Comment on attachment 374402 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=374402&action=review > Source/WebCore/ChangeLog:10 > + This is because CoreText has special composition rules for CJK languages, which we don't have in our simple > + text codepath. Rather than implementing the composition rules in WebKit, we can simply disable them in Do we have them in our complex text codepath? Should we instead flip to that codepath when necessary?
Myles C. Maxfield
Comment 5 2019-07-18 12:25:34 PDT
Comment on attachment 374402 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=374402&action=review >> Source/WebCore/ChangeLog:10 >> + text codepath. Rather than implementing the composition rules in WebKit, we can simply disable them in > > Do we have them in our complex text codepath? Should we instead flip to that codepath when necessary? In our complex text codepath, CoreText does/would take care of it for us. It doesn't require any additional code in WebKit's complex text codepath. Instead, it would require additional code in WebKit's simple text codepath to match what the complex path does. We can't flip to the complex text codepath for all CJK languages; that would be a huge performance regression.
Myles C. Maxfield
Comment 6 2019-07-18 12:27:14 PDT
Comment on attachment 374402 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=374402&action=review >>> Source/WebCore/ChangeLog:10 >>> + text codepath. Rather than implementing the composition rules in WebKit, we can simply disable them in >> >> Do we have them in our complex text codepath? Should we instead flip to that codepath when necessary? > > In our complex text codepath, CoreText does/would take care of it for us. It doesn't require any additional code in WebKit's complex text codepath. Instead, it would require additional code in WebKit's simple text codepath to match what the complex path does. > > We can't flip to the complex text codepath for all CJK languages; that would be a huge performance regression. In the longer term, we should implement support in our fast text codepath, and flip the CoreText support back on. https://bugs.webkit.org/show_bug.cgi?id=199913
EWS Watchlist
Comment 7 2019-07-18 13:00:34 PDT
Comment on attachment 374402 [details] Patch Attachment 374402 [details] did not pass mac-ews (mac): Output: https://webkit-queues.webkit.org/results/12767807 New failing tests: css3/font-feature-font-face-local.html editing/mac/selection/word-thai.html svg/custom/glyph-selection-arabic-forms.svg
EWS Watchlist
Comment 8 2019-07-18 13:00:36 PDT
Created attachment 374405 [details] Archive of layout-test-results from ews101 for mac-highsierra The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews101 Port: mac-highsierra Platform: Mac OS X 10.13.6
EWS Watchlist
Comment 9 2019-07-18 13:09:01 PDT
Comment on attachment 374402 [details] Patch Attachment 374402 [details] did not pass mac-wk2-ews (mac-wk2): Output: https://webkit-queues.webkit.org/results/12767822 New failing tests: css3/font-feature-font-face-local.html editing/mac/selection/word-thai.html svg/custom/glyph-selection-arabic-forms.svg
EWS Watchlist
Comment 10 2019-07-18 13:09:03 PDT
Created attachment 374406 [details] Archive of layout-test-results from ews105 for mac-highsierra-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews105 Port: mac-highsierra-wk2 Platform: Mac OS X 10.13.6
EWS Watchlist
Comment 11 2019-07-18 13:59:49 PDT
Comment on attachment 374402 [details] Patch Attachment 374402 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/12767887 New failing tests: legacy-animation-engine/fast/text/crash-complex-text-surrogate.html css3/font-feature-font-face-local.html fast/text/crash-complex-text-surrogate.html svg/custom/glyph-selection-arabic-forms.svg
EWS Watchlist
Comment 12 2019-07-18 13:59:51 PDT
Created attachment 374415 [details] Archive of layout-test-results from ews123 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews123 Port: ios-simulator-wk2 Platform: Mac OS X 10.14.5
EWS Watchlist
Comment 13 2019-07-18 14:15:52 PDT
Comment on attachment 374402 [details] Patch Attachment 374402 [details] did not pass mac-debug-ews (mac): Output: https://webkit-queues.webkit.org/results/12767948 New failing tests: storage/indexeddb/pending-version-change-on-exit-private.html css3/font-feature-font-face-local.html svg/custom/glyph-selection-arabic-forms.svg editing/mac/selection/word-thai.html
EWS Watchlist
Comment 14 2019-07-18 14:15:54 PDT
Created attachment 374416 [details] Archive of layout-test-results from ews115 for mac-highsierra The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews115 Port: mac-highsierra Platform: Mac OS X 10.13.6
Myles C. Maxfield
Comment 15 2019-07-18 17:10:41 PDT
The test failures don't occur on macOS Catalina nor iOS 13 😢
Myles C. Maxfield
Comment 16 2019-07-18 19:28:38 PDT
Created attachment 374437 [details] Patch for committing
Myles C. Maxfield
Comment 17 2019-07-19 13:18:36 PDT
Created attachment 374489 [details] Patch for committing
WebKit Commit Bot
Comment 18 2019-07-21 10:24:00 PDT
Comment on attachment 374489 [details] Patch for committing Clearing flags on attachment: 374489 Committed r247674: <https://trac.webkit.org/changeset/247674>
Note You need to log in before you can comment on or make changes to this bug.