Fix typo.
[dcpomatic.git] / src / wx / gl_video_view.cc
index d16ac444185f59a7c2c3bd2ee2e158f078d06b1c..a0f83db6d4390dfba4d056d5d4eb13da67048164 100644 (file)
@@ -51,6 +51,7 @@ using boost::optional;
 
 GLVideoView::GLVideoView (FilmViewer* viewer, wxWindow *parent)
        : VideoView (viewer)
+       , _vsync_enabled (false)
 {
        _canvas = new wxGLCanvas (parent, wxID_ANY, 0, wxDefaultPosition, wxDefaultSize, wxFULL_REPAINT_ON_RESIZE);
        _context = new wxGLContext (_canvas);
@@ -62,13 +63,18 @@ GLVideoView::GLVideoView (FilmViewer* viewer, wxWindow *parent)
                /* Enable vsync */
                Display* dpy = wxGetX11Display();
                glXSwapIntervalEXT (dpy, DefaultScreen(dpy), 1);
+               _vsync_enabled = true;
        }
 #endif
 
 #ifdef DCPOMATIC_WINDOWS
        if (_canvas->IsExtensionSupported("WGL_EXT_swap_control")) {
                /* Enable vsync */
-               wglSwapIntervalEXT (1);
+               PFNWGLSWAPINTERVALEXTPROC swap = (PFNWGLSWAPINTERVALEXTPROC) wglGetProcAddress("wglSwapIntervalEXT");
+               if (swap) {
+                       swap (1);
+                       _vsync_enabled = true;
+               }
        }
 
 #endif
@@ -77,6 +83,7 @@ GLVideoView::GLVideoView (FilmViewer* viewer, wxWindow *parent)
        /* Enable vsync */
        GLint swapInterval = 1;
        CGLSetParameter (CGLGetCurrentContext(), kCGLCPSwapInterval, &swapInterval);
+       _vsync_enabled = true;
 #endif
 
        glGenTextures (1, &_id);