It is possible that a stream is destroyed while another thread is waiting on
event_empty_cond or event_cond. The waiting thread should have the opportunity
to be rescheduled and exit the critical section before the condition variables
and the mutex are destroyed.
--
v3: winegstreamer: Synchronize media source async commands and shutdown.
winegstreamer: Free the GStreamer buffer when freeing a WG parser stream.
winegstreamer: Synchronize access to the media source from callbacks.
winegstreamer: Synchronize concurrent access to the media stream.
winegstreamer: Synchronize concurrent access to the media source.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1278
I was watching some random YouTube stream and then heard a voice telling me to do this.
This can run wglgears on wow, though there's plenty of missing pieces which I don't have any idea how to fix (like buffer mapping, etc.). Opening it as a draft for now to show the whole thing, if it seems alright I'll send it in batches.
--
v5: winex11.drv: Avoid crashing on invalid pixel format pointer.
opengl32: Use the +opengl debug channel everywhere.
opengl32: Implement wow64 thunks for glMapBuffer (et al.).
opengl32: Use manual win32 thunks for glMapBuffer (et al.).
opengl32: Implement wow64 thunk for glGetString (et al.).
opengl32: Implement wow64 thunks for glFenceSync (et al.).
opengl32: Implement wow64 thunks for input pointer arrays.
opengl32: Implement wow64 thunk for wglGetPbufferDCARB.
opengl32: Implement wow64 thunk for wglCreatePbufferARB.
opengl32: Implement wow64 thunk for wglCreateContextAttribsARB.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1010
These invalid formats are rejected when creating WIC render targets. Otherwise, Wine may create a WIC render target with an unsupported format and in turn, will make testing IsSupported() method difficult.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/1321