diff --git a/modules/video_filter/opencv_wrapper.c b/modules/video_filter/opencv_wrapper.c index 8c6c6b5fec..881876057e 100644 --- a/modules/video_filter/opencv_wrapper.c +++ b/modules/video_filter/opencv_wrapper.c @@ -434,9 +434,16 @@ static picture_t* Filter( filter_t* p_filter, picture_t* p_pic ) p_sys->p_proc_image, &(p_sys->p_proc_image->format), &fmt_out ); - - picture_CopyPixels( p_outpic, p_outpic_tmp ); - CopyInfoAndRelease( p_outpic, p_outpic_tmp ); + if (unlikely(!p_outpic_tmp)) + { + picture_Release(p_outpic); + p_outpic = NULL; + } + else + { + picture_CopyPixels( p_outpic, p_outpic_tmp ); + CopyInfoAndRelease( p_outpic, p_outpic_tmp ); + } } else if( p_sys->i_internal_chroma == CINPUT ) { picture_CopyPixels( p_outpic, p_sys->p_proc_image ); picture_CopyProperties( p_outpic, p_sys->p_proc_image );