Bug 122070

Summary: Regression: :after content can fail to repaint borders
Product: WebKit Reporter: Philip Rogers <pdr>
Component: New BugsAssignee: Philip Rogers <pdr>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, d-r, esprehn+autocc, fmalita, glenn, kling, kondapallykalyan, schenney
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Testcase
none
Patch
none
Patch none

Description Philip Rogers 2013-09-28 22:07:20 PDT
Created attachment 212912 [details]
Testcase

wkrev.com/150259 introduced a regression where :after content with borders or outlines can fail to repaint correctly.

Patch forthcoming.
Comment 1 Philip Rogers 2013-09-28 22:37:49 PDT
Created attachment 212913 [details]
Patch
Comment 2 Andreas Kling 2013-09-29 06:54:55 PDT
Comment on attachment 212913 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=212913&action=review

r=me, great find!

> Source/WebCore/rendering/RenderElement.cpp:300
> -    return diff == StyleDifferenceRepaint || (diff == StyleDifferenceRepaintIfText && hasImmediateNonWhitespaceTextChild());
> +    return diff == StyleDifferenceRepaint || (diff == StyleDifferenceRepaintIfText && hasImmediateNonWhitespaceTextChildOrBorderOrOutline());

The name StyleDifferenceRepaintIfText is no longer entirely accurate.
StyleDifferenceRepaintIfTextOrBorderOrOutline? :|
Comment 3 Philip Rogers 2013-09-29 14:40:24 PDT
Created attachment 212933 [details]
Patch
Comment 4 Philip Rogers 2013-09-29 14:44:15 PDT
Comment on attachment 212933 [details]
Patch

Thanks for the quick review! I updated the enum value to reflect what it actually does (StyleDifferenceRepaintIfTextOrBorderOrOutline).

Off to the CQ for you, patch.
Comment 5 WebKit Commit Bot 2013-09-29 15:14:51 PDT
Comment on attachment 212933 [details]
Patch

Clearing flags on attachment: 212933

Committed r156619: <http://trac.webkit.org/changeset/156619>
Comment 6 WebKit Commit Bot 2013-09-29 15:14:54 PDT
All reviewed patches have been landed.  Closing bug.