Created attachment 122531 [details] Testcase The attached test case hits ASSERTION FAILED: m_transparencyCount > 0 when painting, if the context has paintingDisabled() (e.g. when doing a Find in Safari).
The issue is that RenderLayer::beginTransparencyLayers() bails if context->paintingDisabled() is true, so never starting the transparency layer. However, when rendering the child, filterPainter hands back a context with painting enabled. We then hit beginTransparencyLayers() in the if (localPaintFlags & PaintLayerPaintingCompositingForegroundPhase) clause, since haveTransparency was passed in from the ancestor. We should just not apply filters if the context has painting disabled.
Created attachment 122533 [details] Patch
<rdar://problem/10695409>
Comment on attachment 122533 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=122533&action=review > Source/WebCore/ChangeLog:14 > + Manual test: > + ManualTests/filters/opacity-above-filter.html Could this be a TestWebKitAPI test instead?
http://trac.webkit.org/changeset/105019
(In reply to comment #5) > http://trac.webkit.org/changeset/105019 Thanks!