[vlc-devel] [PATCH] nvdec: fix segfault in nvdec_gl
Steve Lhomme
robux4 at ycbcr.xyz
Mon Apr 6 09:41:02 CEST 2020
Also the only place Close is called from Open, p_sys cannot be NULL. So
maybe it's related to some local code you have ?
On 2020-04-06 9:21, Steve Lhomme wrote:
> Given it's doing just one thing it's cleaner not to call Close at all
> and just do the cleanup in Open.
>
> On 2020-04-06 8:58, Quentin Chateau wrote:
>> It happens when Close is called from the Open function in an error path
>> On Apr 6, 2020, at 08:56, Steve Lhomme <robux4 at ycbcr.xyz
>> <mailto:robux4 at ycbcr.xyz>> wrote:
>>
>> On 2020-04-03 17:44, quentin.chateau at deepskycorp.com wrote:
>>
>> From: Quentin Chateau <quentin.chateau at deepskycorp.com>
>>
>> ---
>> modules/hw/nvdec/nvdec_gl.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/modules/hw/nvdec/nvdec_gl.c
>> b/modules/hw/nvdec/nvdec_gl.c
>> index 137e730028..18a34d061c 100644
>> --- a/modules/hw/nvdec/nvdec_gl.c
>> +++ b/modules/hw/nvdec/nvdec_gl.c
>> @@ -150,7 +150,8 @@ static void Close(vlc_object_t *obj)
>> {
>> struct vlc_gl_interop *interop = (void *)obj;
>> converter_sys_t *p_sys = interop->priv;
>> - vlc_decoder_device_Release(p_sys->device);
>> + if (p_sys)
>> + vlc_decoder_device_Release(p_sys->device);
>>
>>
>> This is very suspicious. p_sys is owned by this object and not
>> used by
>> anyone else. It's allocated with vlc_obj_malloc() so doesn't need
>> to be
>> freed manually and is valid as long the object is valid.
>>
>> If the pointer is wonrg it's a sign something is not working right
>> elsewhere.
>>
>> }
>>
>> static int Open(vlc_object_t *obj)
>> -- 2.17.1
>>
>>
>> ------------------------------------------------------------------------
>>
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
>>
>>
>> ------------------------------------------------------------------------
>>
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
>>
>>
>> _______________________________________________
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
>>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
More information about the vlc-devel
mailing list