RESOLVED FIXED 96890
REGRESSION (r126763): css1/pseudo/firstline.html fails when using the complex text code path
https://bugs.webkit.org/show_bug.cgi?id=96890
Summary REGRESSION (r126763): css1/pseudo/firstline.html fails when using the complex...
mitz
Reported 2012-09-16 13:47:09 PDT
To reproduce: 1. run-webkit-tests --complex css1/pseudo/firstline.html —or— 1. Open the test in Safari 2. Select Always Use Complex Text Code Path in Debug > Miscellaneous 3. Reload This was caused by <http://trac.webkit.org/r126763>, the fix for bug 83045.
Attachments
Proposed fix (no change log or test yet) (1.69 KB, patch)
2012-09-16 14:13 PDT, mitz
no flags
Invalidate the TextLayout on font change (4.66 KB, patch)
2012-09-16 16:09 PDT, mitz
eric: review+
mitz
Comment 1 2012-09-16 14:03:45 PDT
This happens because the same RenderText is rendered with two different fonts on different lines. I think the solution is to add a Font* to RenderTextInfo.
mitz
Comment 2 2012-09-16 14:13:52 PDT
Created attachment 164324 [details] Proposed fix (no change log or test yet)
mitz
Comment 3 2012-09-16 16:09:04 PDT
Created attachment 164325 [details] Invalidate the TextLayout on font change
Eric Seidel (no email)
Comment 4 2012-09-16 16:36:14 PDT
Comment on attachment 164325 [details] Invalidate the TextLayout on font change View in context: https://bugs.webkit.org/attachment.cgi?id=164325&action=review > Source/WebCore/ChangeLog:10 > + When a first-line style specifies a font, different pieces of the same RednerText can be RenderText > Source/WebCore/rendering/RenderBlockLineLayout.cpp:2440 > + renderTextInfo.m_font = &f; Do we ever need to clear this pointer?
Eric Seidel (no email)
Comment 5 2012-09-16 16:36:32 PDT
Comment on attachment 164325 [details] Invalidate the TextLayout on font change Sorry, didn't mean to clear Sam's review.
mitz
Comment 6 2012-09-16 16:39:37 PDT
Fixed in <http://trac.webkit.org/r128713>. (In reply to comment #4) > (From update of attachment 164325 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=164325&action=review > > > Source/WebCore/ChangeLog:10 > > + When a first-line style specifies a font, different pieces of the same RednerText can be > > RenderText Fixed in <http://trac.webkit.org/r128714>. > > > Source/WebCore/rendering/RenderBlockLineLayout.cpp:2440 > > + renderTextInfo.m_font = &f; > > Do we ever need to clear this pointer? No, the RenderTextInfo gets destroyed at the end of line layout.
Note You need to log in before you can comment on or make changes to this bug.