Bug 1066280 - Fixes. - r=kamidphish,mattwoodrow
From 4e9f52ab105333e8b1120342e9583b2d833a4465 Mon Sep 17 00:00:00 2001 --- dom/canvas/WebGLContext.cpp | 10 +++++-- gfx/gl/GLContext.cpp | 20 -------------- gfx/gl/GLContext.h | 3 -- gfx/gl/GLReadTexImageHelper.cpp | 5 +++- gfx/gl/GLScreenBuffer.cpp | 13 +++++++-- gfx/gl/GLUploadHelpers.cpp | 27 ++++++++++++++++++ gfx/gl/SharedSurfaceGralloc.cpp | 14 ++++------ gfx/gl/SharedSurfaceGralloc.h | 10 +++++-- gfx/gl/SurfaceTypes.cpp | 2 ++ gfx/gl/SurfaceTypes.h | 1 + gfx/layers/client/CanvasClient.cpp | 44 ++++++++++++++++++------------ gfx/layers/client/CanvasClient.h | 8 +++--- gfx/layers/client/ClientCanvasLayer.cpp | 6 ++++ gfx/layers/client/ClientCanvasLayer.h | 2 +- gfx/layers/client/TextureClient.cpp | 11 ++++---- gfx/layers/client/TextureClient.h | 6 ++-- gfx/layers/composite/TextureHost.cpp | 15 +++++----- gfx/layers/composite/TextureHost.h | 10 +++---- gfx/layers/d3d10/CanvasLayerD3D10.cpp | 9 ++++-- gfx/layers/d3d9/CanvasLayerD3D9.cpp | 8 ++++-- gfx/layers/ipc/LayersSurfaces.ipdlh | 4 +-- gfx/layers/moz.build | 4 ++- gfx/layers/opengl/GrallocTextureClient.cpp | 26 +++++++++++++++++- gfx/layers/opengl/GrallocTextureClient.h | 3 ++ 24 files changed, 171 insertions(+), 90 deletions(-)
This commit is contained in:
@@ -661,6 +661,7 @@ CreateOffscreen(GLContext* gl,
|
||||
baseCaps.alpha = options.alpha;
|
||||
baseCaps.antialias = options.antialias;
|
||||
baseCaps.depth = options.depth;
|
||||
baseCaps.premultAlpha = options.premultipliedAlpha;
|
||||
baseCaps.preserve = options.preserveDrawingBuffer;
|
||||
baseCaps.stencil = options.stencil;
|
||||
|
||||
@@ -1421,10 +1422,15 @@ WebGLContext::PresentScreenBuffer()
|
||||
if (!mShouldPresent) {
|
||||
return false;
|
||||
}
|
||||
MOZ_ASSERT(!mBackbufferNeedsClear);
|
||||
|
||||
gl->MakeCurrent();
|
||||
MOZ_ASSERT(!mBackbufferNeedsClear);
|
||||
if (!gl->PublishFrame()) {
|
||||
|
||||
auto screen = gl->Screen();
|
||||
MOZ_ASSERT(screen);
|
||||
|
||||
auto size = screen->Size();
|
||||
if (!screen->PublishFrame(size)) {
|
||||
ForceLoseContext();
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user