summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp')
-rw-r--r--Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp b/Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp
index 2f754822e..0acd3486c 100644
--- a/Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp
+++ b/Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp
@@ -99,7 +99,7 @@ void UpdateAtlas::didSwapBuffers()
m_bufferStates[i] = Available;
}
-PassOwnPtr<GraphicsContext> UpdateAtlas::beginPaintingOnAvailableBuffer(const WebCore::IntSize& size, IntPoint& offset)
+PassOwnPtr<GraphicsContext> UpdateAtlas::beginPaintingOnAvailableBuffer(ShareableSurface::Handle& handle, const WebCore::IntSize& size, IntPoint& offset)
{
buildLayoutIfNeeded();
int index = findAvailableIndex(size);
@@ -108,6 +108,9 @@ PassOwnPtr<GraphicsContext> UpdateAtlas::beginPaintingOnAvailableBuffer(const We
if (index < 0)
return PassOwnPtr<GraphicsContext>();
+ if (!m_surface->createHandle(handle))
+ return PassOwnPtr<WebCore::GraphicsContext>();
+
// FIXME: Use tri-state buffers, to allow faster updates.
m_bufferStates[index] = Taken;
offset = offsetForIndex(index);