From 0f920fb2051ea03082a4ec772f5b78ba6a537460 Mon Sep 17 00:00:00 2001 From: thefiddler Date: Mon, 28 Apr 2014 01:29:34 +0200 Subject: [PATCH] [X11] Fixed SGI_swap_control query GLX can return valid function pointer to unsupported functions. We need to check for extension support in addition to the function pointer. Fixes crash on OpenSUSE 13.1 in VirtualBox. --- Source/OpenTK/Platform/X11/X11GLContext.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Source/OpenTK/Platform/X11/X11GLContext.cs b/Source/OpenTK/Platform/X11/X11GLContext.cs index d4e73cca..ff557e97 100644 --- a/Source/OpenTK/Platform/X11/X11GLContext.cs +++ b/Source/OpenTK/Platform/X11/X11GLContext.cs @@ -380,7 +380,9 @@ namespace OpenTK.Platform.X11 public override void LoadAll() { - vsync_supported = Glx.SupportsFunction("glXSwapIntervalSGI"); + vsync_supported = + SupportsExtension(display, currentWindow, "SupportsExtension") && + Glx.SupportsFunction("glXSwapIntervalSGI"); Debug.Print("Context supports vsync: {0}.", vsync_supported); base.LoadAll();