[vlc-commits] video_output: don't use the decoder FIFO if it has been deleted
Steve Lhomme
git at videolan.org
Wed Oct 9 10:15:46 CEST 2019
vlc | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Mon Oct 7 15:05:26 2019 +0200| [e810903970d8c228f9daa41bcb2357e42585a5be] | committer: Steve Lhomme
video_output: don't use the decoder FIFO if it has been deleted
For example if the vout didn't start properly.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e810903970d8c228f9daa41bcb2357e42585a5be
---
src/video_output/video_output.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c
index eb022fb2ac..21d55bc89c 100644
--- a/src/video_output/video_output.c
+++ b/src/video_output/video_output.c
@@ -223,6 +223,9 @@ void vout_GetResetStatistic(vout_thread_t *vout, unsigned *restrict displayed,
bool vout_IsEmpty(vout_thread_t *vout)
{
assert(!vout->p->dummy);
+ if (!vout->p->decoder_fifo)
+ return true;
+
picture_t *picture = picture_fifo_Peek(vout->p->decoder_fifo);
if (picture)
picture_Release(picture);
@@ -1596,7 +1599,10 @@ error:
filter_chain_Delete(sys->filter.chain_static);
video_format_Clean(&sys->filter.format);
if (sys->decoder_fifo != NULL)
+ {
picture_fifo_Delete(sys->decoder_fifo);
+ sys->decoder_fifo = NULL;
+ }
return VLC_EGENERIC;
}
@@ -1706,7 +1712,10 @@ void vout_StopDisplay(vout_thread_t *vout)
free(sys->filter.configuration);
if (sys->decoder_fifo != NULL)
+ {
picture_fifo_Delete(sys->decoder_fifo);
+ sys->decoder_fifo = NULL;
+ }
assert(sys->decoder_pool == NULL);
if (sys->mouse_event)
More information about the vlc-commits
mailing list