Bug 1460255 - Use gfxXlibSurface::GetGLXPixmap() on GLX only, r?jrmuizel draft
authorMartin Stransky <stransky@redhat.com>
Tue, 15 May 2018 16:18:14 +0200
changeset 795296 ee52c624bb9965bc74456254990dfdcdfc4bfb1e
parent 795295 27791727a1a2d38b5b7be041726d8148b140260e
push id109922
push userstransky@redhat.com
push dateTue, 15 May 2018 14:39:25 +0000
reviewersjrmuizel
bugs1460255
milestone62.0a1
Bug 1460255 - Use gfxXlibSurface::GetGLXPixmap() on GLX only, r?jrmuizel gfxXlibSurface::GetGLXPixmap() is provided by GL_PROVIDER_GLX but GL_PROVIDER_GLX is not defined by Wayland target. Don't export gfxXlibSurface::GetGLXPixmap() on Wayland now and leave that for further fixes. MozReview-Commit-ID: 408vjgGspG6
gfx/gl/SharedSurfaceGLX.cpp
--- a/gfx/gl/SharedSurfaceGLX.cpp
+++ b/gfx/gl/SharedSurfaceGLX.cpp
@@ -60,24 +60,28 @@ SharedSurface_GLXDrawable::ProducerRelea
 {
     mGL->MakeCurrent();
     mGL->fFlush();
 }
 
 void
 SharedSurface_GLXDrawable::LockProdImpl()
 {
+#ifdef GL_PROVIDER_GLX
     mGL->Screen()->SetReadBuffer(LOCAL_GL_FRONT);
     GLContextGLX::Cast(mGL)->OverrideDrawable(mXlibSurface->GetGLXPixmap());
+#endif
 }
 
 void
 SharedSurface_GLXDrawable::UnlockProdImpl()
 {
+#ifdef GL_PROVIDER_GLX
     GLContextGLX::Cast(mGL)->RestoreDrawable();
+#endif
 }
 
 bool
 SharedSurface_GLXDrawable::ToSurfaceDescriptor(layers::SurfaceDescriptor* const out_descriptor)
 {
     if (!mXlibSurface)
         return false;