Index: Source/platform/graphics/ImageBuffer.cpp |
diff --git a/Source/platform/graphics/ImageBuffer.cpp b/Source/platform/graphics/ImageBuffer.cpp |
index 384d3b15d003b668f120d8c0366424edd83989b2..f9aa678c3f57f7613f5d032facc94708c77508ce 100644 |
--- a/Source/platform/graphics/ImageBuffer.cpp |
+++ b/Source/platform/graphics/ImageBuffer.cpp |
@@ -265,23 +265,7 @@ void ImageBuffer::draw(GraphicsContext* context, const FloatRect& destRect, cons |
return; |
FloatRect srcRect = srcPtr ? *srcPtr : FloatRect(FloatPoint(), size()); |
- RefPtr<SkPicture> picture = m_surface->getPicture(); |
- if (picture) { |
- context->drawPicture(picture.get(), destRect, srcRect, op, blendMode); |
- return; |
- } |
- |
- SkBitmap bitmap = m_surface->bitmap(); |
- // For ImageBufferSurface that enables cachedBitmap, Use the cached Bitmap for CPU side usage |
- // if it is available, otherwise generate and use it. |
- if (!context->isAccelerated() && m_surface->isAccelerated() && m_surface->cachedBitmapEnabled() && isSurfaceValid()) { |
- m_surface->updateCachedBitmapIfNeeded(); |
- bitmap = m_surface->cachedBitmap(); |
- } |
- |
- RefPtr<Image> image = BitmapImage::create(NativeImageSkia::create(drawNeedsCopy(m_context.get(), context) ? deepSkBitmapCopy(bitmap) : bitmap)); |
- |
- context->drawImage(image.get(), destRect, srcRect, op, blendMode, DoNotRespectImageOrientation); |
+ m_surface->draw(context, destRect, srcRect, op, blendMode, drawNeedsCopy(m_context.get(), context)); |
} |
void ImageBuffer::flush() |