Module: wine Branch: master Commit: e785880a96d677acaa06667d006e329516a1923a URL: https://source.winehq.org/git/wine.git/?a=commit;h=e785880a96d677acaa06667d0...
Author: Zebediah Figura z.figura12@gmail.com Date: Sat Jan 23 12:43:43 2021 -0600
winegstreamer: Don't force no_more_pads() onto a Wine thread.
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/winegstreamer/gst_cbs.c | 10 ---------- dlls/winegstreamer/gst_cbs.h | 2 -- dlls/winegstreamer/gstdemux.c | 10 ++-------- 3 files changed, 2 insertions(+), 20 deletions(-)
diff --git a/dlls/winegstreamer/gst_cbs.c b/dlls/winegstreamer/gst_cbs.c index b9effe73a5b..ebef533779d 100644 --- a/dlls/winegstreamer/gst_cbs.c +++ b/dlls/winegstreamer/gst_cbs.c @@ -174,16 +174,6 @@ gboolean activate_mode_wrapper(GstPad *pad, GstObject *parent, GstPadMode mode, return cbdata.u.activate_mode_data.ret; }
-void no_more_pads_wrapper(GstElement *element, gpointer user) -{ - struct cb_data cbdata = { NO_MORE_PADS }; - - cbdata.u.no_more_pads_data.element = element; - cbdata.u.no_more_pads_data.user = user; - - call_cb(&cbdata); -} - GstFlowReturn request_buffer_src_wrapper(GstPad *pad, GstObject *parent, guint64 ofs, guint len, GstBuffer **buf) { diff --git a/dlls/winegstreamer/gst_cbs.h b/dlls/winegstreamer/gst_cbs.h index 0e262c12db8..ce74e76edae 100644 --- a/dlls/winegstreamer/gst_cbs.h +++ b/dlls/winegstreamer/gst_cbs.h @@ -33,7 +33,6 @@ enum CB_TYPE { EXISTING_NEW_PAD, QUERY_FUNCTION, ACTIVATE_MODE, - NO_MORE_PADS, REQUEST_BUFFER_SRC, EVENT_SRC, EVENT_SINK, @@ -135,7 +134,6 @@ void perform_cb_media_source(struct cb_data *data) DECLSPEC_HIDDEN; void existing_new_pad_wrapper(GstElement *bin, GstPad *pad, gpointer user) DECLSPEC_HIDDEN; gboolean query_function_wrapper(GstPad *pad, GstObject *parent, GstQuery *query) DECLSPEC_HIDDEN; gboolean activate_mode_wrapper(GstPad *pad, GstObject *parent, GstPadMode mode, gboolean activate) DECLSPEC_HIDDEN; -void no_more_pads_wrapper(GstElement *decodebin, gpointer user) DECLSPEC_HIDDEN; GstFlowReturn request_buffer_src_wrapper(GstPad *pad, GstObject *parent, guint64 ofs, guint len, GstBuffer **buf) DECLSPEC_HIDDEN; gboolean event_src_wrapper(GstPad *pad, GstObject *parent, GstEvent *event) DECLSPEC_HIDDEN; gboolean event_sink_wrapper(GstPad *pad, GstObject *parent, GstEvent *event) DECLSPEC_HIDDEN; diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c index 56b8225c3df..22df838e4df 100644 --- a/dlls/winegstreamer/gstdemux.c +++ b/dlls/winegstreamer/gstdemux.c @@ -1765,7 +1765,7 @@ static BOOL decodebin_parser_init_gst(struct parser *filter) g_signal_connect(element, "pad-added", G_CALLBACK(existing_new_pad_wrapper), filter); g_signal_connect(element, "pad-removed", G_CALLBACK(removed_decoded_pad_wrapper), filter); g_signal_connect(element, "autoplug-select", G_CALLBACK(autoplug_blacklist), filter); - g_signal_connect(element, "no-more-pads", G_CALLBACK(no_more_pads_wrapper), filter); + g_signal_connect(element, "no-more-pads", G_CALLBACK(no_more_pads), filter);
filter->their_sink = gst_element_get_static_pad(element, "sink");
@@ -2443,12 +2443,6 @@ void perform_cb_gstdemux(struct cb_data *cbdata) cbdata->u.activate_mode_data.ret = activate_mode(data->pad, data->parent, data->mode, data->activate); break; } - case NO_MORE_PADS: - { - struct no_more_pads_data *data = &cbdata->u.no_more_pads_data; - no_more_pads(data->element, data->user); - break; - } case REQUEST_BUFFER_SRC: { struct getrange_data *data = &cbdata->u.getrange_data; @@ -2645,7 +2639,7 @@ static BOOL avi_splitter_init_gst(struct parser *filter)
g_signal_connect(element, "pad-added", G_CALLBACK(existing_new_pad_wrapper), filter); g_signal_connect(element, "pad-removed", G_CALLBACK(removed_decoded_pad_wrapper), filter); - g_signal_connect(element, "no-more-pads", G_CALLBACK(no_more_pads_wrapper), filter); + g_signal_connect(element, "no-more-pads", G_CALLBACK(no_more_pads), filter);
filter->their_sink = gst_element_get_static_pad(element, "sink");