Zebediah Figura : winegstreamer: Don't force request_buffer_src() onto a Wine thread.

Alexandre Julliard julliard at winehq.org
Wed Jan 27 15:35:03 CST 2021


Module: wine
Branch: master
Commit: ad6a3e753467a1b2006d927ede6709a5ccc41b96
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=ad6a3e753467a1b2006d927ede6709a5ccc41b96

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Tue Jan 26 17:45:32 2021 -0600

winegstreamer: Don't force request_buffer_src() onto a Wine thread.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winegstreamer/gst_cbs.c  | 16 ----------------
 dlls/winegstreamer/gst_cbs.h  |  2 --
 dlls/winegstreamer/gstdemux.c |  9 +--------
 3 files changed, 1 insertion(+), 26 deletions(-)

diff --git a/dlls/winegstreamer/gst_cbs.c b/dlls/winegstreamer/gst_cbs.c
index ee2452987d9..5267091c5e1 100644
--- a/dlls/winegstreamer/gst_cbs.c
+++ b/dlls/winegstreamer/gst_cbs.c
@@ -161,22 +161,6 @@ gboolean activate_mode_wrapper(GstPad *pad, GstObject *parent, GstPadMode mode,
     return cbdata.u.activate_mode_data.ret;
 }
 
-GstFlowReturn request_buffer_src_wrapper(GstPad *pad, GstObject *parent, guint64 ofs, guint len,
-        GstBuffer **buf)
-{
-    struct cb_data cbdata = { REQUEST_BUFFER_SRC };
-
-    cbdata.u.getrange_data.pad = pad;
-    cbdata.u.getrange_data.parent = parent;
-    cbdata.u.getrange_data.ofs = ofs;
-    cbdata.u.getrange_data.len = len;
-    cbdata.u.getrange_data.buf = buf;
-
-    call_cb(&cbdata);
-
-    return cbdata.u.getrange_data.ret;
-}
-
 gboolean query_sink_wrapper(GstPad *pad, GstObject *parent, GstQuery *query)
 {
     struct cb_data cbdata = { QUERY_SINK };
diff --git a/dlls/winegstreamer/gst_cbs.h b/dlls/winegstreamer/gst_cbs.h
index e80fcd41e4a..4afde78ba7d 100644
--- a/dlls/winegstreamer/gst_cbs.h
+++ b/dlls/winegstreamer/gst_cbs.h
@@ -32,7 +32,6 @@ typedef enum {
 enum CB_TYPE {
     EXISTING_NEW_PAD,
     ACTIVATE_MODE,
-    REQUEST_BUFFER_SRC,
     QUERY_SINK,
     GSTDEMUX_MAX,
     BYTESTREAM_WRAPPER_PULL,
@@ -116,7 +115,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 activate_mode_wrapper(GstPad *pad, GstObject *parent, GstPadMode mode, gboolean activate) DECLSPEC_HIDDEN;
-GstFlowReturn request_buffer_src_wrapper(GstPad *pad, GstObject *parent, guint64 ofs, guint len, GstBuffer **buf) DECLSPEC_HIDDEN;
 GstFlowReturn got_data_wrapper(GstPad *pad, GstObject *parent, GstBuffer *buf) DECLSPEC_HIDDEN;
 void Gstreamer_transform_pad_added_wrapper(GstElement *filter, GstPad *pad, gpointer user) DECLSPEC_HIDDEN;
 gboolean query_sink_wrapper(GstPad *pad, GstObject *parent, GstQuery *query) DECLSPEC_HIDDEN;
diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c
index fc861735cd7..5c6266f4bd0 100644
--- a/dlls/winegstreamer/gstdemux.c
+++ b/dlls/winegstreamer/gstdemux.c
@@ -1598,7 +1598,7 @@ static HRESULT GST_Connect(struct parser *This, IPin *pConnectPin)
     gst_element_set_bus(This->container, This->bus);
 
     This->my_src = gst_pad_new_from_static_template(&src_template, "quartz-src");
-    gst_pad_set_getrange_function(This->my_src, request_buffer_src_wrapper);
+    gst_pad_set_getrange_function(This->my_src, request_buffer_src);
     gst_pad_set_query_function(This->my_src, query_function);
     gst_pad_set_activatemode_function(This->my_src, activate_mode_wrapper);
     gst_pad_set_event_function(This->my_src, event_src);
@@ -2536,13 +2536,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 REQUEST_BUFFER_SRC:
-        {
-            struct getrange_data *data = &cbdata->u.getrange_data;
-            cbdata->u.getrange_data.ret = request_buffer_src(data->pad, data->parent,
-                    data->ofs, data->len, data->buf);
-            break;
-        }
     case QUERY_SINK:
         {
             struct query_sink_data *data = &cbdata->u.query_sink_data;




More information about the wine-cvs mailing list