[PATCH] winegstreamer: Unref the GstCaps object in init_new_decoded_pad().

Zebediah Figura zfigura at codeweavers.com
Mon May 11 10:39:46 CDT 2020


On 5/10/20 6:03 AM, Akihiro Sagawa wrote:
> diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c
> index 7038cef9b3..c9d2469d0a 100644
> --- a/dlls/winegstreamer/gstdemux.c
> +++ b/dlls/winegstreamer/gstdemux.c
> @@ -999,6 +999,7 @@ static void init_new_decoded_pad(GstElement *bin, GstPad *pad, struct gstdemux *
>      caps = gst_caps_make_writable(caps);
>      arg = gst_caps_get_structure(caps, 0);
>      typename = gst_structure_get_name(arg);
> +    gst_caps_unref(caps);
>  
>      if (!(pin = create_pin(This, nameW)))
>      {
> 

I don't think it's safe to release the caps here if we subsequently 
access "typename".

(It is safe, because the type name is internally implemented using 
GQuark, but that's an implementation detail we shouldn't rely on.)



More information about the wine-devel mailing list