RESOLVED WONTFIX 111348
[Chromium] Windows builds fail some font tests with 8 bit text runs enabled
https://bugs.webkit.org/show_bug.cgi?id=111348
Summary [Chromium] Windows builds fail some font tests with 8 bit text runs enabled
Levi Weintraub
Reported 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]
Attachments
sample crash log (8.48 KB, text/plain)
2013-03-04 15:20 PST, Dirk Pranke
no flags
Scott Graham
Comment 1 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...
Eric Seidel (no email)
Comment 2 2013-03-04 13:18:26 PST
Dirk: Do you know why we don't have symbols for windows?
Scott Graham
Comment 3 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, ...?)
Dirk Pranke
Comment 4 2013-03-04 13:38:16 PST
Yeah, I'll take a look.
Eric Seidel (no email)
Comment 5 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?
Eric Seidel (no email)
Comment 6 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)
Scott Graham
Comment 7 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.
Scott Graham
Comment 8 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. :/
Levi Weintraub
Comment 9 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.
Dirk Pranke
Comment 10 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 ;).
Dirk Pranke
Comment 11 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.
Levi Weintraub
Comment 12 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.
Levi Weintraub
Comment 13 2013-03-04 15:29:07 PST
Adding some folks who've had the good fortune to touch this code in the past.
Kenneth Russell
Comment 14 2013-03-04 19:02:11 PST
CC'ing a couple of Skia folks.
Note You need to log in before you can comment on or make changes to this bug.