| Index: WebCore/rendering/RenderBoxModelObject.cpp
|
| ===================================================================
|
| --- WebCore/rendering/RenderBoxModelObject.cpp (revision 37126)
|
| +++ WebCore/rendering/RenderBoxModelObject.cpp (working copy)
|
| @@ -304,7 +304,7 @@
|
| }
|
|
|
|
|
| -void RenderBoxModelObject::paintFillLayerExtended(const PaintInfo& paintInfo, const Color& c, const FillLayer* bgLayer, int tx, int ty, int w, int h, InlineFlowBox* box, CompositeOperator op)
|
| +void RenderBoxModelObject::paintFillLayerExtended(const PaintInfo& paintInfo, const Color& c, const FillLayer* bgLayer, int tx, int ty, int w, int h, InlineFlowBox* box, CompositeOperator op, RenderObject* backgroundObject)
|
| {
|
| GraphicsContext* context = paintInfo.context;
|
| bool includeLeftEdge = box ? box->includeLeftEdge() : true;
|
| @@ -463,20 +463,7 @@
|
| if (!destRect.isEmpty()) {
|
| phase += destRect.location() - destOrigin;
|
| CompositeOperator compositeOp = op == CompositeSourceOver ? bgLayer->composite() : op;
|
| - RenderObject* clientForBackgroundImage = this;
|
| - // Check if this is the root element painting a background layer propagated from <body>,
|
| - // and pass the body's renderer as the client in that case.
|
| - if (isRoot && !style()->hasBackground()) {
|
| - ASSERT(node()->hasTagName(htmlTag));
|
| - HTMLElement* body = document()->body();
|
| - ASSERT(body);
|
| - ASSERT(body->hasLocalName(bodyTag));
|
| - ASSERT(body->renderer());
|
| - if (body) {
|
| - if (RenderObject* bodyRenderer = body->renderer())
|
| - clientForBackgroundImage = bodyRenderer;
|
| - }
|
| - }
|
| + RenderObject* clientForBackgroundImage = backgroundObject ? backgroundObject : this;
|
| context->drawTiledImage(bg->image(clientForBackgroundImage, tileSize), destRect, phase, tileSize, compositeOp);
|
| }
|
| }
|
|
|