Bug 1133689 - Make D3DVsyncDisplay destructor private. r=jmuizelaar
authorJacek Caban <jacek@codeweavers.com>
Mon, 23 Feb 2015 12:14:49 +0100 (2015-02-23)
changeset 230326 e37165f9b5fe445d982aca359266d41b0d9c323b
parent 230325 50752f206a9b34be3557cf411d61739b0ca35cf3
child 230327 0adcaee7f3bb6aeb75c1a71d4f3a6d5462e05ea6
push id28322
push userkwierso@gmail.com
push dateTue, 24 Feb 2015 00:05:31 +0000 (2015-02-24)
treeherdermozilla-central@368c62292249 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjmuizelaar
bugs1133689
milestone38.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1133689 - Make D3DVsyncDisplay destructor private. r=jmuizelaar
gfx/thebes/gfxWindowsPlatform.cpp
--- a/gfx/thebes/gfxWindowsPlatform.cpp
+++ b/gfx/thebes/gfxWindowsPlatform.cpp
@@ -1968,23 +1968,16 @@ public:
         : mVsyncEnabledLock("D3DVsyncEnabledLock")
         , mVsyncEnabled(false)
       {
         mVsyncThread = new base::Thread("WindowsVsyncThread");
         const double rate = 1000 / 60.0;
         mSoftwareVsyncRate = TimeDuration::FromMilliseconds(rate);
       }
 
-      virtual ~D3DVsyncDisplay()
-      {
-        MOZ_ASSERT(NS_IsMainThread());
-        DisableVsync();
-        delete mVsyncThread;
-      }
-
       virtual void EnableVsync() MOZ_OVERRIDE
       {
         MOZ_ASSERT(NS_IsMainThread());
         { // scope lock
           MonitorAutoLock lock(mVsyncEnabledLock);
           if (mVsyncEnabled) {
             return;
           }
@@ -2077,16 +2070,23 @@ public:
             MOZ_ASSERT(adjust > 0);
             uint64_t usAdjust = (adjust * microseconds) / frequency.QuadPart;
             vsync -= TimeDuration::FromMicroseconds((double) usAdjust);
           }
         } // end for
       }
 
     private:
+      virtual ~D3DVsyncDisplay()
+      {
+        MOZ_ASSERT(NS_IsMainThread());
+        DisableVsync();
+        delete mVsyncThread;
+      }
+
       bool IsInVsyncThread()
       {
         return mVsyncThread->thread_id() == PlatformThread::CurrentId();
       }
 
       TimeDuration mSoftwareVsyncRate;
       Monitor mVsyncEnabledLock;
       base::Thread* mVsyncThread;