sys/windows: fix wgl function loading in accordance with OpenGL wiki

This commit is contained in:
hikari
2022-12-06 01:53:19 +02:00
parent daf005d1ab
commit abaacfe78d

View File

@@ -87,6 +87,12 @@ foreign Opengl32 {
}
// Used by vendor:OpenGL
// https://www.khronos.org/opengl/wiki/Load_OpenGL_Functions#Windows
gl_set_proc_address :: proc(p: rawptr, name: cstring) {
(^rawptr)(p)^ = wglGetProcAddress(name)
func := wglGetProcAddress(name)
if uintptr(func) == 0 || uintptr(func) == 1 || uintptr(func) == 2 || uintptr(func) == 3 || uintptr(func) == ~uintptr(0) {
module := LoadLibraryW(L("opengl32.dll"))
func = GetProcAddress(module, name)
}
(^rawptr)(p)^ = func
}