Bug 1285044 - Remove unused NV_fence from ShSurfANGLE. - r=mtseng draft
authorJeff Gilbert <jgilbert@mozilla.com>
Wed, 06 Jul 2016 15:20:52 -0700
changeset 384681 eed29333b7eedcba950e8dd1cae917bc50193edc
parent 384060 dbb31bcad5a1f60a35b5600ea1578d9b9fa55237
child 524772 2449e1b1a46c63f8982fbdc3936859d1807b79b7
push id22344
push userbmo:jgilbert@mozilla.com
push dateWed, 06 Jul 2016 22:44:12 +0000
reviewersmtseng
bugs1285044
milestone50.0a1
Bug 1285044 - Remove unused NV_fence from ShSurfANGLE. - r=mtseng MozReview-Commit-ID: LhYzgGdOVEq
gfx/gl/SharedSurfaceANGLE.cpp
gfx/gl/SharedSurfaceANGLE.h
--- a/gfx/gl/SharedSurfaceANGLE.cpp
+++ b/gfx/gl/SharedSurfaceANGLE.cpp
@@ -67,67 +67,52 @@ SharedSurface_ANGLEShareHandle::Create(G
     }
     void* opaqueKeyedMutex = nullptr;
     egl->fQuerySurfacePointerANGLE(display,
                                    pbuffer,
                                    LOCAL_EGL_DXGI_KEYED_MUTEX_ANGLE,
                                    &opaqueKeyedMutex);
     RefPtr<IDXGIKeyedMutex> keyedMutex = static_cast<IDXGIKeyedMutex*>(opaqueKeyedMutex);
 
-    GLuint fence = 0;
-    if (gl->IsExtensionSupported(GLContext::NV_fence)) {
-        gl->MakeCurrent();
-        gl->fGenFences(1, &fence);
-    }
-
     typedef SharedSurface_ANGLEShareHandle ptrT;
     UniquePtr<ptrT> ret( new ptrT(gl, egl, size, hasAlpha, pbuffer, shareHandle,
-                                  keyedMutex, fence) );
+                                  keyedMutex) );
     return Move(ret);
 }
 
 EGLDisplay
 SharedSurface_ANGLEShareHandle::Display()
 {
     return mEGL->Display();
 }
 
 SharedSurface_ANGLEShareHandle::SharedSurface_ANGLEShareHandle(GLContext* gl,
                                                                GLLibraryEGL* egl,
                                                                const gfx::IntSize& size,
                                                                bool hasAlpha,
                                                                EGLSurface pbuffer,
                                                                HANDLE shareHandle,
-                                                               const RefPtr<IDXGIKeyedMutex>& keyedMutex,
-                                                               GLuint fence)
+                                                               const RefPtr<IDXGIKeyedMutex>& keyedMutex)
     : SharedSurface(SharedSurfaceType::EGLSurfaceANGLE,
                     AttachmentType::Screen,
                     gl,
                     size,
                     hasAlpha,
                     true)
     , mEGL(egl)
     , mPBuffer(pbuffer)
     , mShareHandle(shareHandle)
     , mKeyedMutex(keyedMutex)
-    , mFence(fence)
 {
 }
 
 
 SharedSurface_ANGLEShareHandle::~SharedSurface_ANGLEShareHandle()
 {
     mEGL->fDestroySurface(Display(), mPBuffer);
-
-    if (!mGL->MakeCurrent())
-        return;
-
-    if (mFence) {
-        mGL->fDeleteFences(1, &mFence);
-    }
 }
 
 void
 SharedSurface_ANGLEShareHandle::LockProdImpl()
 {
     GLContextEGL::Cast(mGL)->SetEGLSurfaceOverride(mPBuffer);
 }
 
--- a/gfx/gl/SharedSurfaceANGLE.h
+++ b/gfx/gl/SharedSurfaceANGLE.h
@@ -35,26 +35,24 @@ public:
 
 protected:
     GLLibraryEGL* const mEGL;
     const EGLSurface mPBuffer;
 public:
     const HANDLE mShareHandle;
 protected:
     RefPtr<IDXGIKeyedMutex> mKeyedMutex;
-    const GLuint mFence;
 
     SharedSurface_ANGLEShareHandle(GLContext* gl,
                                    GLLibraryEGL* egl,
                                    const gfx::IntSize& size,
                                    bool hasAlpha,
                                    EGLSurface pbuffer,
                                    HANDLE shareHandle,
-                                   const RefPtr<IDXGIKeyedMutex>& keyedMutex,
-                                   GLuint fence);
+                                   const RefPtr<IDXGIKeyedMutex>& keyedMutex);
 
     EGLDisplay Display();
 
 public:
     virtual ~SharedSurface_ANGLEShareHandle();
 
     virtual void LockProdImpl() override;
     virtual void UnlockProdImpl() override;