Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(249)

Issue 2102113002: Fix case mapping buffer length divergence for synthetic caps (Closed)

Created:
4 years, 5 months ago by drott
Modified:
4 years, 5 months ago
Reviewers:
eae, behdad
CC:
chromium-reviews, krit, pdr+graphicswatchlist_chromium.org, drott+blinkwatch_chromium.org, blink-reviews-platform-graphics_chromium.org, dshwang, jbroman, Justin Novosad, Rik, f(malita), blink-reviews, Stephen Chennney, ajuma+watch_chromium.org, danakj+watch_chromium.org, rwlbuis
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix case mapping buffer length divergence for synthetic caps And provide locale to case WTF::String's upper implementation, which is based on ICU transliterators. This fix handles all cases of Unicode's SpecialCasing.txt case mapping rules list where the base character is extended to two or more characters after case mapping, except those cases where context is required. The latter case is tracked in crbug.com/623940 and depends on ICU streaming uppercase API support. Fix by adding multiple characters after case mapping to the same HarfBuzz cluster index, which is nicely compatible with our previous approaches for shaping result extraction, text selection, etc. BUG=589335, 605067 R=eae,behdad Committed: https://crrev.com/de2db20f1ddb41f0c8de88ab9d376cbf40769a0c Cr-Commit-Position: refs/heads/master@{#402782}

Patch Set 1 #

Patch Set 2 : Turkish test is a progression, rebaselining, Moving comment up in test case #

Unified diffs Side-by-side diffs Delta from patch set Stats (+91 lines, -5 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 1 chunk +2 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/fast/text/font-features/caps-casemapping.html View 1 1 chunk +37 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/fonts/shaping/CaseMappingHarfBuzzBufferFiller.h View 3 chunks +8 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/fonts/shaping/CaseMappingHarfBuzzBufferFiller.cpp View 3 chunks +43 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 13 (5 generated)
drott
4 years, 5 months ago (2016-06-28 15:33:35 UTC) #2
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2102113002/1
4 years, 5 months ago (2016-06-28 15:33:36 UTC) #3
eae
OK, LGTM
4 years, 5 months ago (2016-06-28 16:04:11 UTC) #4
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/251500)
4 years, 5 months ago (2016-06-28 16:27:47 UTC) #6
behdad
lgtm
4 years, 5 months ago (2016-06-28 22:07:16 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2102113002/20001
4 years, 5 months ago (2016-06-29 10:49:13 UTC) #10
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 5 months ago (2016-06-29 12:01:20 UTC) #11
commit-bot: I haz the power
4 years, 5 months ago (2016-06-29 12:02:51 UTC) #13
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/de2db20f1ddb41f0c8de88ab9d376cbf40769a0c
Cr-Commit-Position: refs/heads/master@{#402782}

Powered by Google App Engine
This is Rietveld 408576698