fre 2022-07-01 klockan 00:29 +0200 skrev Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com>
> ---
>  libavcodec/pthread_slice.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/libavcodec/pthread_slice.c b/libavcodec/pthread_slice.c
> index 756cc59dbf..a4d31c6f4d 100644
> --- a/libavcodec/pthread_slice.c
> +++ b/libavcodec/pthread_slice.c
> @@ -242,9 +242,11 @@ int
> ff_slice_thread_allocz_entries(AVCodecContext *avctx, int count)
>      if (avctx->active_thread_type & FF_THREAD_SLICE)  {
>          SliceThreadContext *p = avctx->internal->thread_ctx;
>  
> -        if (p->entries) {
> -            av_freep(&p->entries);
> +        if (p->entries_count == count) {
> +            memset(p->entries, 0, p->entries_count * sizeof(*p-
> >entries));
> +            return 0;

Couldn't this trivially handle p->entries_count < count also?

>          }
> +        av_freep(&p->entries);
>  
>          p->entries       = av_calloc(count, sizeof(*p->entries));
>          if (!p->entries) {

Looks like we could use an av_fast_calloc()

/Tomas

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to