[PATCH 1/5] winegstreamer: Don't try using src_getrange_cb input buffer.

Zebediah Figura zfigura at codeweavers.com
Wed Jun 15 19:24:55 CDT 2022


On 6/14/22 02:26, Rémi Bernon wrote:
> From: Rémi Bernon <rbernon at codeweavers.com>
> 
> It is invalid according to GStreamer documentation.

What documentation are you referring to?

The documentation for GstPadGetRangeFunction itself is somewhat badly 
written and doesn't actually mention what "buffer" is expected to 
contain on input, but the documentation for gst_pad_get_range() says:

     If buffer points to a variable holding NULL, a valid new GstBuffer 
will be placed in buffer when this function returns GST_FLOW_OK. The new 
buffer must be freed with gst_buffer_unref after usage.

     When buffer points to a variable that points to a valid GstBuffer, 
the buffer will be filled with the result data when this function 
returns GST_FLOW_OK. If the provided buffer is larger than size, only 
size bytes will be filled in the result buffer and its size will be 
updated accordingly.

and the implementation shows that the intent is for the same to apply to 
GstPadGetRangeFunction.

For what it's worth, I believe oggdemux actually does pass a non-NULL 
buffer, and breaks if we don't fill that.



More information about the wine-devel mailing list