| Index: Source/core/html/canvas/WebGLRenderingContextBase.cpp
|
| diff --git a/Source/core/html/canvas/WebGLRenderingContextBase.cpp b/Source/core/html/canvas/WebGLRenderingContextBase.cpp
|
| index 1159ad7039c4fcbee798f6101f5642deeb742ca0..f2ac80e6df4a8e21e51506bb63925ea883742a45 100644
|
| --- a/Source/core/html/canvas/WebGLRenderingContextBase.cpp
|
| +++ b/Source/core/html/canvas/WebGLRenderingContextBase.cpp
|
| @@ -518,6 +518,7 @@ WebGLRenderingContextBase::WebGLRenderingContextBase(HTMLCanvasElement* passedCa
|
| , m_multisamplingObserverRegistered(false)
|
| , m_onePlusMaxEnabledAttribIndex(0)
|
| , m_onePlusMaxNonDefaultTextureUnit(0)
|
| + , m_savingImage(false)
|
| {
|
| ASSERT(context);
|
|
|
| @@ -841,6 +842,7 @@ void WebGLRenderingContextBase::paintRenderingResultsToCanvas()
|
| canvas()->makePresentationCopy();
|
| } else
|
| canvas()->clearPresentationCopy();
|
| +
|
| clearIfComposited();
|
|
|
| if (!m_markedCanvasDirty && !m_layerCleared)
|
| @@ -852,7 +854,7 @@ void WebGLRenderingContextBase::paintRenderingResultsToCanvas()
|
| ScopedTexture2DRestorer restorer(this);
|
|
|
| m_drawingBuffer->commit();
|
| - if (!(canvas()->buffer())->copyRenderingResultsFromDrawingBuffer(m_drawingBuffer.get())) {
|
| + if (!(canvas()->buffer())->copyRenderingResultsFromDrawingBuffer(m_drawingBuffer.get(), m_savingImage)) {
|
| canvas()->ensureUnacceleratedImageBuffer();
|
| if (canvas()->hasImageBuffer())
|
| m_drawingBuffer->paintRenderingResultsToCanvas(canvas()->buffer());
|
|
|