Sweden-Number/dlls/winegstreamer
Giovanni Mascellani 4853f65c84 winegstreamer: Do not block forever if EOS races with command queue.
Currently, the winegstreamer media source checks for EOS when
RequestSample() is called, but doesn't handle the cases when EOS
is detected between the RequestSample() call and the moment when
the request is popped from the command queue and serviced. This
can result in the media source waiting forever for a sample and
get stuck.

This commit fixes the bug by adding a check for EOS in
wait_for_event().

This commit fixes Medieval Dynasty hanging on developer logos on
the Steam Deck.

Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-22 22:42:12 +01:00
..
Makefile.in winegstreamer: Introduce new wg_transform struct. 2022-02-17 09:07:07 +01:00
audioconvert.c winegstreamer: Build without -DWINE_NO_LONG_TYPES. 2022-02-04 09:48:31 +01:00
gst_guids.h
gst_private.h winegstreamer: Create static pads on wg_transform struct. 2022-02-17 09:07:07 +01:00
main.c winegstreamer: Create static pads on wg_transform struct. 2022-02-17 09:07:07 +01:00
media_source.c winegstreamer: Do not block forever if EOS races with command queue. 2022-02-22 22:42:12 +01:00
mfplat.c winegstreamer: Introduce new WG_MAJOR_TYPE_WMA major type. 2022-02-17 09:07:07 +01:00
quartz_parser.c winegstreamer: No longer queue WG_PARSER_EVENT_SEGMENT. 2022-02-22 18:20:23 +01:00
rsrc.rc
unix_private.h winegstreamer: Append audioconvert and audioresample elements. 2022-02-22 20:04:42 +01:00
unixlib.h winegstreamer: No longer queue WG_PARSER_EVENT_SEGMENT. 2022-02-22 18:20:23 +01:00
wg_format.c winegstreamer: Remove \n at the end of GST log messages. 2022-02-22 20:04:31 +01:00
wg_parser.c winegstreamer: Append audioconvert and audioresample elements. 2022-02-22 20:04:42 +01:00
wg_transform.c winegstreamer: Lookup and instantiate a WMA decoder element. 2022-02-22 20:04:45 +01:00
winegstreamer.rgs
winegstreamer.spec wmvcore: Move the async reader implementation to winegstreamer. 2021-10-07 19:38:20 +02:00
winegstreamer_classes.idl winegstreamer: Stub implement WMA decoder DMO / MF transform. 2022-02-03 10:22:27 +01:00
wm_asyncreader.c winegstreamer: Release stream_cs on error in stream_thread(). 2022-02-08 10:47:03 +01:00
wm_reader.c winegstreamer: No longer queue WG_PARSER_EVENT_SEGMENT. 2022-02-22 18:20:23 +01:00
wm_syncreader.c winegstreamer: Handle EnableDiscreteOutput and SpeakerConfig settings in WMSyncReader_SetOutputSetting(). 2022-02-08 20:24:14 +01:00
wma_decoder.c winegstreamer: Create static pads on wg_transform struct. 2022-02-17 09:07:07 +01:00