Move Win32 specific function grabbing fallback to WGL.cpp. Fixes issue 6964.

This commit is contained in:
Ryan Houdek
2014-01-18 14:10:24 +00:00
parent 839df31347
commit bea484e12f
2 changed files with 10 additions and 14 deletions

View File

@ -8,9 +8,6 @@
#if defined(__linux__) || defined(__APPLE__)
#include <dlfcn.h>
#endif
#ifdef _WIN32
#include <windows.h>
#endif
#include <unordered_map>
// gl_1_1
@ -779,9 +776,6 @@ namespace GLExtensions
bool _isES3;
bool _isES;
u32 _GLVersion;
#ifdef _WIN32
HINSTANCE dllHandle = NULL;
#endif
std::unordered_map<std::string, bool> _extensionlist;
// Forward declared init functions
bool init_gl_1_1();
@ -954,10 +948,6 @@ namespace GLExtensions
#if defined(__linux__) || defined(__APPLE__)
// Give it a second try with dlsym
*func = dlsym(RTLD_NEXT, name.c_str());
#endif
#ifdef _WIN32
if (*func == NULL)
*func = (void*)GetProcAddress(dllHandle, (LPCSTR)name.c_str());
#endif
if (*func == NULL && _isES)
*func = (void*)0xFFFFFFFF; // Easy to determine invalid function, just so we continue on
@ -979,9 +969,7 @@ namespace GLExtensions
bool success = true;
_isES3 = GLInterface->GetMode() == GLInterfaceMode::MODE_OPENGLES3;
_isES = GLInterface->GetMode() == GLInterfaceMode::MODE_OPENGLES3 || GLInterface->GetMode() == GLInterfaceMode::MODE_OPENGLES2;
#ifdef _WIN32
dllHandle = LoadLibrary(TEXT("OpenGL32.dll"));
#endif
// Grab glGetStringi and glGetIntegerv immediately
// We need them to grab the extension list
// If it fails then the user's drivers don't support GL 3.0