Age | Commit message (Collapse) | Author |
|
It is easier to have the WGL API on top of the ICD callbacks as
Microsoft's own implementation does, than to have a seperate shared
entity. This source reorganization is in antecipation of that.
|
|
Ensure no other thread is accessing a framebuffer when it is being destroyed by
acquiring both the global and per-framebuffer mutexes. Normal access only
needs the global lock to walk the linked list and acquire the per-framebuffer
mutex.
|
|
According to
http://blogs.msdn.com/oldnewthing/archive/2008/01/15/7113860.aspx
WM_SIZE is generated from WM_WINDOWPOSCHANGED by DefWindowProc so it
can be masked out by the application.
Also there were some weird bogus WM_SIZE 0x0 messages when starting
sharedtex_mt which we don't get like this.
|
|
Some applications create several HDCs for the same window, so spite the WGL
API is geared towards HDCs it is not reliable searching by HDC.
|
|
In multithreading stw_call_window_proc can be called by a thread other
than the thread where the context is bound.
|
|
Not only for cosmetic reasons, but also because we need to set the
SetWindowsHookEx hook for threads created before the DllMain is called
(threads for each we don't get the DLL_THREAD_ATTACH notification).
|
|
|
|
Return TRUE in this case. Returning FALSE seems to result in
mis-rendering -- possibly opengl32.dll is trying to compensate by
doing a software blit??
|
|
|
|
|
|
|
|
|
|
There is no current pixel format. Each HDC has its pixelformat which is
kept by gdi and set/get via the SetPixelFormat/GetPixelFormat functions.
Now the HDC's pixelformat is kept in the stw_framebuffer, which is
created during the SetPixelFormat.
|
|
|
|
Unfortunately this doesn't catch all the cases, as the mesa state tracker
can still use the framebuffer without giving the wgl state tracker
the chance to lock it.
|
|
|
|
|
|
|
|
Subclassing the window is invasive: we might call an old window proc even
after it was removed. Glut and another bug just in the wrong time was
provoking this. Hooks don't have this problem.
|
|
|
|
|
|
|
|
The massive ifs are ugly, but it's not worth to automate this for just a
handful of formats.
Fixes conform bcolor.c.
|
|
Just a quick fix to prevent segfaults with glean.
|
|
|
|
|
|
|
|
|
|
Conflicts:
src/gallium/state_trackers/wgl/shared/stw_public.h
|
|
|
|
Each of icd, shared and wgl now have the opportunity to maintain their
own per-device structs, which should reduce the need for these
modules to be looking into each others structures.
|
|
|