summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp')
-rw-r--r--Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp b/Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp
index d00faf8..a38f6bd 100644
--- a/Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp
+++ b/Source/WebCore/platform/graphics/chromium/ContentLayerChromium.cpp
@@ -343,7 +343,7 @@ void ContentLayerChromium::draw()
ASSERT(sv && sv->initialized());
GraphicsContext3D* context = layerRendererContext();
GLC(context, context->activeTexture(GraphicsContext3D::TEXTURE0));
- m_contentsTexture->bindTexture();
+ bindContentsTexture();
layerRenderer()->useShader(sv->contentShaderProgram());
GLC(context, context->uniform1i(sv->shaderSamplerLocation(), 0));
@@ -361,8 +361,21 @@ void ContentLayerChromium::draw()
drawOpacity(), sv->shaderMatrixLocation(),
sv->shaderAlphaLocation());
}
- m_contentsTexture->unreserve();
+ unreserveContentsTexture();
+}
+
+void ContentLayerChromium::unreserveContentsTexture()
+{
+ if (m_contentsTexture)
+ m_contentsTexture->unreserve();
}
+void ContentLayerChromium::bindContentsTexture()
+{
+ if (m_contentsTexture)
+ m_contentsTexture->bindTexture();
+}
+
+
}
#endif // USE(ACCELERATED_COMPOSITING)