[Webkit-unassigned] [Bug 93170] Inline continuations create :after generated content on style recalcs

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 1 08:08:21 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=93170


Abhishek Arya <inferno at chromium.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #166444|review?                     |review-, commit-queue-
               Flag|                            |




--- Comment #8 from Abhishek Arya <inferno at chromium.org>  2012-10-01 08:08:45 PST ---
(From update of attachment 166444)
View in context: https://bugs.webkit.org/attachment.cgi?id=166444&action=review

> Source/WebCore/rendering/RenderInline.cpp:176
> +        if (hasPseudoAfter && !currCont->inlineElementContinuation())

These two lines are unneeded i think since you update :before, :after content later.

197 if (!isAnonymous() && document()->styleSheetCollection()->usesBeforeAfterRules()) {
198        children()->updateBeforeAfterContent(this, BEFORE);
199        children()->updateBeforeAfterContent(this, AFTER);
200    }

> Source/WebCore/rendering/RenderInline.cpp:182
> +    if (hasPseudoAfter)

I don't like the setting/unsetting :after style hack. Also, i don't think we want to create :before content here. So, it should be better to have like a global bool in RenderObjectChildList and then use it to bail out in RenderObjectChildList::updateBeforeAfterContent. Then you can set/unset it here with a TemporaryChange around the for loop. Basically the gist is we shouldn't be updating our :before, :after while we are inside the for loop.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list