Bug 111348 - [Chromium] Windows builds fail some font tests with 8 bit text runs enabled
Summary: [Chromium] Windows builds fail some font tests with 8 bit text runs enabled
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on: 99393
Blocks:
  Show dependency treegraph
 
Reported: 2013-03-04 10:55 PST by Levi Weintraub
Modified: 2013-04-08 16:39 PDT (History)
12 users (show)

See Also:


Attachments
sample crash log (8.48 KB, text/plain)
2013-03-04 15:20 PST, Dirk Pranke
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Levi Weintraub 2013-03-04 10:55:04 PST
I need someone with a Windows machine to diagnose why.

Tests that failed: css3/font-feature-settings-rendering.html fast/css/text-rendering.html fast/text/international/text-spliced-font.html fast/text/shaping/shaping-selection-rect.html fast/writing-mode/text-orientation-basic.html

Really unhelpful assert message:

crash log for DumpRenderTree (pid 2996):
STDOUT: <empty>
STDERR: ASSERTION FAILED: !is8Bit()
STDERR: Backtrace:
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65CC5559+9851929]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65EDA062+12033826]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65E7D3FA+11653818]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65CC5185+9850949]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66A38C08+23956168]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66A36BF8+23947960]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66A3525B+23941403]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66A2E973+23914547]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66A2DFBF+23912063]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66A325D0+23930000]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66973B6D+23149101]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66972BEC+23145132]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66978FDB+23170715]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66978C92+23169874]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66973B83+23149123]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66972BEC+23145132]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66978FDB+23170715]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66978C92+23169874]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66973B83+23149123]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x66972BEC+23145132]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6687A6F2+22128050]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6687B563+22131747]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65F21A7C+12327228]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x659A8061+6586145]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65F43744+12465668]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65F43419+12464857]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65F430DE+12464030]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x659B1A69+6625577]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65CA09F7+9701559]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65C62FB1+9449073]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65BF3DE1+8993953]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65BF3EAC+8994156]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65BEFCC1+8977281]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65BF3F19+8994265]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65BF4226+8995046]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65F1D5A3+12309603]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x660859C7+13785223]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6642B2FE+17609150]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6642B51F+17609695]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6603B6E4+13481380]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6603B7F7+13481655]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x6656B9E5+18921637]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x667E071D+21497309]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x665D3A57+19347735]
STDERR:     WebKit::WebFilterOperation::WebFilterOperation [0x65EF53EE+12145326]
STDERR:     webkit::ppapi::NPObjectToPPVar [0x61083CC9+545024]
STDERR:     (No symbol) [0x0042177B]
STDERR:     (No symbol) [0x0042B58C]
STDERR:     (No symbol) [0x0042B1E1]
STDERR:     (No symbol) [0x0042AC2C]
STDERR:     base::win::OSInfo::processors [0x6426C91F+378667]
STDERR:     base::win::OSInfo::processors [0x64278313+426271]
STDERR:     base::win::OSInfo::processors [0x64278804+427536]
STDERR:     base::win::OSInfo::processors [0x642796C6+431314]
STDERR:     base::win::OSInfo::processors [0x64287FF4+491008]
STDERR:     base::win::OSInfo::processors [0x64287102+487182]
STDERR:     base::win::OSInfo::processors [0x642269EC+92152]
STDERR:     base::win::OSInfo::processors [0x64277E59+425061]
STDERR:     base::win::OSInfo::processors [0x64277BAE+424378]
STDERR:     base::win::OSInfo::processors [0x64248DE9+232437]
STDERR:     base::win::OSInfo::processors [0x64276E81+421005]
STDERR:     (No symbol) [0x00364B6D]
Comment 1 Scott Graham 2013-03-04 12:56:17 PST
Dirk, do you have a Windows DRT that will render work for those tests properly (fonts, etc.)? Otherwise I can attempt to get them to run, but it'll take some figuring, I imagine...
Comment 2 Eric Seidel (no email) 2013-03-04 13:18:26 PST
Dirk: Do you know why we don't have symbols for windows?
Comment 3 Scott Graham 2013-03-04 13:30:51 PST
(In reply to comment #2)
> Dirk: Do you know why we don't have symbols for windows?

Not sure where that stack came from, but in general because it hurts cycle time too much. (Whether that's a good tradeoff, ...?)
Comment 4 Dirk Pranke 2013-03-04 13:38:16 PST
Yeah, I'll take a look.
Comment 5 Eric Seidel (no email) 2013-03-04 13:38:52 PST
(In reply to comment #3)
> (In reply to comment #2)
> > Dirk: Do you know why we don't have symbols for windows?
> 
> Not sure where that stack came from, but in general because it hurts cycle time too much. (Whether that's a good tradeoff, ...?)

The symbolication process of crashes hurts cycle time too much, or including symbols in the Release binary does?  I assume we have MS SymbolServer or something set up for post-facto symbolization of release binaries?
Comment 6 Eric Seidel (no email) 2013-03-04 13:39:33 PST
This lack-of-symbols caused some of the confusion in ap's bug this weekend too (bug 111167)
Comment 7 Scott Graham 2013-03-04 13:41:12 PST
(In reply to comment #5)
> (In reply to comment #3)
> > (In reply to comment #2)
> > > Dirk: Do you know why we don't have symbols for windows?
> > 
> > Not sure where that stack came from, but in general because it hurts cycle time too much. (Whether that's a good tradeoff, ...?)
> 
> The symbolication process of crashes hurts cycle time too much, or including symbols in the Release binary does?  I assume we have MS SymbolServer or something set up for post-facto symbolization of release binaries?

Building with symbols on.
Comment 8 Scott Graham 2013-03-04 13:56:34 PST
fwiw, I just finished syncing the LayoutTests, and got:

##################################################################
## Layout test system dependencies check failed.
##
## Must use either the Aero or Basic theme.
##
##################################################################

which doesn't exist on Win8. So, apparently I don't have Windows machine (at work) that can run them either. :/
Comment 9 Levi Weintraub 2013-03-04 14:37:26 PST
Sorry, I just wasted some of Dirk's time... Changing the bug title. the 8BIT_TEXT_RUN flag needs to be enabled in features.gypi to trigger this failure.
Comment 10 Dirk Pranke 2013-03-04 14:42:03 PST
(In reply to comment #9)
> Sorry, I just wasted some of Dirk's time... Changing the bug title. the 8BIT_TEXT_RUN flag needs to be enabled in features.gypi to trigger this failure.

Not a waste of my time, another data point ;).
Comment 11 Dirk Pranke 2013-03-04 15:20:15 PST
Created attachment 191321 [details]
sample crash log

All five tests crash in a debug build, and have the top two stack frames. One of them has drawComplexText() instead of floatWidthForComplexText() for the third frame, but it looks like they're all basically the same issue.
Comment 12 Levi Weintraub 2013-03-04 15:25:57 PST
My question to whoever knows Uniscribe (I don't): can this code operate on LChars *and* UChars or only UChars? It's likely the latter, in which case we need to pass along the UChar buffer from HarfBuzzShaper to make this work without converting the string to 16 bit twice.
Comment 13 Levi Weintraub 2013-03-04 15:29:07 PST
Adding some folks who've had the good fortune to touch this code in the past.
Comment 14 Kenneth Russell 2013-03-04 19:02:11 PST
CC'ing a couple of Skia folks.