Module: wine
Branch: master
Commit: 62d8d3415cefc95b34afba7a52d32d730d3b7585
URL: https://gitlab.winehq.org/wine/wine/-/commit/62d8d3415cefc95b34afba7a52d32d…
Author: Torge Matthies <openglfreak(a)googlemail.com>
Date: Tue Mar 19 04:06:37 2024 +0100
winegstreamer: Ignore an assert in wg_parser.
This gets hit when a wg_parser receives GST_EVENT_FLUSH_START between the wg_parser_stream_get_buffer function return
and the wg_parser_stream_release_buffer call. In this case the NULL buffer can be ignored, it does no harm and there
is no memory leak from this.
---
dlls/winegstreamer/wg_parser.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/winegstreamer/wg_parser.c b/dlls/winegstreamer/wg_parser.c
index b942273d02b..7253013b6a3 100644
--- a/dlls/winegstreamer/wg_parser.c
+++ b/dlls/winegstreamer/wg_parser.c
@@ -412,11 +412,12 @@ static NTSTATUS wg_parser_stream_release_buffer(void *args)
pthread_mutex_lock(&parser->mutex);
- assert(stream->buffer);
-
- gst_buffer_unmap(stream->buffer, &stream->map_info);
- gst_buffer_unref(stream->buffer);
- stream->buffer = NULL;
+ if (stream->buffer)
+ {
+ gst_buffer_unmap(stream->buffer, &stream->map_info);
+ gst_buffer_unref(stream->buffer);
+ stream->buffer = NULL;
+ }
pthread_mutex_unlock(&parser->mutex);
pthread_cond_signal(&stream->event_empty_cond);