[webkit-reviews] review denied: [Bug 103276] Fix occlusion culling logic to handle css background layer clipping : [Attachment 176050] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Nov 26 13:16:21 PST 2012


Simon Fraser (smfr) <simon.fraser at apple.com> has denied Justin Novosad
<junov at google.com>'s request for review:
Bug 103276: Fix occlusion culling logic to handle css background layer clipping
https://bugs.webkit.org/show_bug.cgi?id=103276

Attachment 176050: Patch
https://bugs.webkit.org/attachment.cgi?id=176050&action=review

------- Additional Comments from Simon Fraser (smfr) <simon.fraser at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=176050&action=review


> Source/WebCore/rendering/style/FillLayer.cpp:294
> +bool FillLayer::clipOccludesNextLayers() const
> +{
> +    switch (clip()) {
> +    case BorderFillBox:
> +	   break;
> +    case PaddingFillBox:
> +	   {
> +	       for (const FillLayer* layer = this->next(); layer; layer =
layer->next()) {
> +		   if (layer->clip() == BorderFillBox)
> +		       return false;
> +	       }
> +	   }
> +	   break;
> +    case ContentFillBox:
> +	   {
> +	       for (const FillLayer* layer = this->next(); layer; layer =
layer->next()) {
> +		   if (layer->clip() == BorderFillBox || layer->clip() ==
PaddingFillBox)
> +		       return false;
> +	       }
> +	   }
> +	   break;
> +    case TextFillBox:
> +	   {
> +	       for (const FillLayer* layer = this->next(); layer; layer =
layer->next()) {
> +		   if (layer->clip() != TextFillBox)
> +		       return false;
> +	       }
> +	   }
> +	   break;
> +    default:
> +	   ASSERT_NOT_REACHED();
> +    }
> +    return true;
> +}

You've made layer painting O(n^2) here.


More information about the webkit-reviews mailing list