[vlc-devel] [PATCH] decoder: stop the display before saving the free vout
Steve Lhomme
robux4 at ycbcr.xyz
Thu Oct 10 10:57:41 CEST 2019
It's missing the call to input_resource_PutVoutLocked() where started is
false, but you get the idea.
On 2019-10-10 10:54, Steve Lhomme wrote:
> Rather than telling the resource storage if it needs to be stopped in some way.
>
> Incidentally the vout_Cancel is not needed anymore since the vout_StopDisplay
> destroys the picture pool anyway.
> ---
> src/input/decoder.c | 2 +-
> src/input/resource.c | 6 ++----
> 2 files changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/src/input/decoder.c b/src/input/decoder.c
> index 53aca540d86..c6a1d252ff7 100644
> --- a/src/input/decoder.c
> +++ b/src/input/decoder.c
> @@ -1942,7 +1942,7 @@ static void DeleteDecoder( decoder_t * p_dec )
> {
> /* Reset the cancel state that was set before joining the decoder
> * thread */
> - vout_Cancel(vout, false);
> + vout_StopDisplay(vout);
> decoder_Notify(p_owner, on_vout_deleted, vout);
> input_resource_PutVout(p_owner->p_resource, vout);
> }
> diff --git a/src/input/resource.c b/src/input/resource.c
> index 727b7e940a7..3e1ffb54300 100644
> --- a/src/input/resource.c
> +++ b/src/input/resource.c
> @@ -325,7 +325,7 @@ void input_resource_SetInput( input_resource_t *p_resource, input_thread_t *p_in
> }
>
> static void input_resource_PutVoutLocked(input_resource_t *p_resource,
> - vout_thread_t *vout, bool started)
> + vout_thread_t *vout)
> {
> assert(vout != NULL);
> vlc_mutex_lock(&p_resource->lock_hold);
> @@ -338,8 +338,6 @@ static void input_resource_PutVoutLocked(input_resource_t *p_resource,
> assert(p_resource->p_vout_free == NULL);
> msg_Dbg(p_resource->p_parent, "saving a free vout");
> p_resource->p_vout_free = vout;
> - if (started)
> - vout_StopDisplay(vout);
> }
> else
> {
> @@ -362,7 +360,7 @@ void input_resource_PutVout(input_resource_t *p_resource,
> vout_thread_t *vout)
> {
> vlc_mutex_lock( &p_resource->lock );
> - input_resource_PutVoutLocked( p_resource, vout, true );
> + input_resource_PutVoutLocked( p_resource, vout );
> vlc_mutex_unlock( &p_resource->lock );
> }
>
> --
> 2.19.1.windows.1
>
> _______________________________________________
> 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