Reland "Change fallback font collection in HarfBuzzShaper" (issue 1244973003 by kojii@chromium.org)

0 views
Skip to first unread message

ko...@chromium.org

unread,
Jul 30, 2015, 10:10:02 AM7/30/15
to le...@chromium.org, e...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org
Reviewers: leviw, eae,

Message:
PTAL.

The experiences in [3][4] indicate that there are some differences in
#define
between MSAN try-bots and MSAN waterfall bots, so it's hard to really
assure the
fix even if it passed MSAN try-bots, but I think we've done the best check
we
could before landing with support from memory team.

Description:
Reland "Change fallback font collection in HarfBuzzShaper"

Change HarfBuzzShaper to not populate the fallback font list during text
shaping and instead populate it based on the ShapeResult objects at call
time. This circumvents additional registration work and renders the text
shaping API simpler and more consistent.

Originally authored by eae@ and landed[1] in r198813
(bbb929c88fbe43979dbb9b2b20218538) and then reverted in r198818
(64e30826c261ac7a2607e891dbe7e9d2d251e5f3) by virtue of Mac 10.6 test
failures caused by a missing NULL check, since added.

Then re-landed[2] in r198886 reported use on an uninitialized variable
on Linux MSAN build and reverted in r198923. It was caused by:
1. Uninitialized m_primaryFont, which was fixed in this CL.
2. Hit a bug in heap for some reasons, which was fixed separately in
[3][4]. PS6 failed MSAN try-bots before [4] and passed after.

[1] https://codereview.chromium.org/1239513004/
[2] https://codereview.chromium.org/1241613006/
[3] https://codereview.chromium.org/1259893002/
[4] https://codereview.chromium.org/1260013003/

BUG=512104


Please review this at https://codereview.chromium.org/1244973003/

Base URL: https://chromium.googlesource.com/chromium/blink.git@master

Affected files (+46, -59 lines):
M Source/platform/fonts/Font.cpp
M Source/platform/fonts/shaping/CachingWordShapeIterator.h
M Source/platform/fonts/shaping/CachingWordShaper.cpp
M Source/platform/fonts/shaping/CachingWordShaperTest.cpp
M Source/platform/fonts/shaping/HarfBuzzShaper.h
M Source/platform/fonts/shaping/HarfBuzzShaper.cpp
M Source/platform/fonts/shaping/HarfBuzzShaperTest.cpp


le...@chromium.org

unread,
Jul 31, 2015, 2:31:05 PM7/31/15
to ko...@chromium.org, e...@chromium.org, drott+r...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org
Seems right to me. I'd like one of drott@ or eae@ to give it the final
stamp.

https://codereview.chromium.org/1244973003/

dr...@chromium.org

unread,
Aug 3, 2015, 4:20:09 AM8/3/15
to ko...@chromium.org, le...@chromium.org, e...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org
On 2015/07/31 18:31:05, leviw wrote:
> Seems right to me. I'd like one of drott@ or eae@ to give it the final
> stamp.

LGTM, thanks for taking care of getting this landed, Koji.



https://codereview.chromium.org/1244973003/

e...@chromium.org

unread,
Aug 3, 2015, 10:13:06 AM8/3/15
to ko...@chromium.org, le...@chromium.org, drott+r...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org

commit-bot@chromium.org via codereview.chromium.org

unread,
Aug 3, 2015, 4:44:51 PM8/3/15
to ko...@chromium.org, le...@chromium.org, e...@chromium.org, drott+r...@chromium.org, commi...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org

commit-bot@chromium.org via codereview.chromium.org

unread,
Aug 3, 2015, 4:47:28 PM8/3/15
to ko...@chromium.org, le...@chromium.org, e...@chromium.org, drott+r...@chromium.org, commi...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org
Try jobs failed on following builders:
android_blink_compile_rel on tryserver.blink (JOB_FAILED,
http://build.chromium.org/p/tryserver.blink/builders/android_blink_compile_rel/builds/44981)
blink_presubmit on tryserver.blink (JOB_FAILED,
http://build.chromium.org/p/tryserver.blink/builders/blink_presubmit/builds/38997)
linux_chromium_gn_rel on tryserver.blink (JOB_FAILED,
http://build.chromium.org/p/tryserver.blink/builders/linux_chromium_gn_rel/builds/43031)

https://codereview.chromium.org/1244973003/

commit-bot@chromium.org via codereview.chromium.org

unread,
Aug 9, 2015, 11:24:30 PM8/9/15
to ko...@chromium.org, le...@chromium.org, e...@chromium.org, drott+r...@chromium.org, commi...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org

commit-bot@chromium.org via codereview.chromium.org

unread,
Aug 9, 2015, 11:28:19 PM8/9/15
to ko...@chromium.org, le...@chromium.org, e...@chromium.org, drott+r...@chromium.org, commi...@chromium.org, blink-...@chromium.org, caba...@adobe.com, dan...@chromium.org, dongseo...@intel.com, drott+bl...@chromium.org, dsch...@chromium.org, fma...@chromium.org, jbr...@chromium.org, ju...@chromium.org, pdr+graphi...@chromium.org, rob....@samsung.com, sche...@chromium.org
Reply all
Reply to author
Forward
0 new messages