diff --git a/src/gl/gl.h b/src/gl/gl.h index 525d84a..b6a71aa 100644 --- a/src/gl/gl.h +++ b/src/gl/gl.h @@ -16,6 +16,7 @@ void* glXGetCurrentContext(); void* glXGetProcAddress(const unsigned char*); void* glXGetProcAddressARB(const unsigned char*); +int glXQueryDrawable(void *dpy, void* glxdraw, int attr, unsigned int * value); unsigned int eglSwapBuffers( void*, void* ); diff --git a/src/loaders/loader_gl.cpp b/src/loaders/loader_gl.cpp index d8c8802..fcd09e7 100644 --- a/src/loaders/loader_gl.cpp +++ b/src/loaders/loader_gl.cpp @@ -86,6 +86,10 @@ bool gl_loader::Load(void *handle, bool egl_only) { reinterpret_castglXGetSwapIntervalMESA)>( glXGetProcAddress((const unsigned char *)"glXGetSwapIntervalMESA")); + glXQueryDrawable = + reinterpret_castglXQueryDrawable)>( + glXGetProcAddress((const unsigned char *)"glXQueryDrawable")); + glXMakeCurrent = reinterpret_castglXMakeCurrent)>( glXGetProcAddress((const unsigned char *)"glXMakeCurrent")); @@ -108,6 +112,7 @@ void gl_loader::CleanUp(bool unload) { glXSwapIntervalEXT = nullptr; glXSwapIntervalSGI = nullptr; glXSwapIntervalMESA = nullptr; + glXQueryDrawable = nullptr; glXMakeCurrent = nullptr; } diff --git a/src/loaders/loader_gl.h b/src/loaders/loader_gl.h index 4823d96..857045a 100644 --- a/src/loaders/loader_gl.h +++ b/src/loaders/loader_gl.h @@ -23,6 +23,7 @@ class gl_loader { decltype(&::glXGetSwapIntervalMESA) glXGetSwapIntervalMESA; decltype(&::glXMakeCurrent) glXMakeCurrent; decltype(&::glXGetCurrentContext) glXGetCurrentContext; + decltype(&::glXQueryDrawable) glXQueryDrawable; decltype(&::eglSwapBuffers) eglSwapBuffers;