diff --git a/libavfilter/avcodec.c b/libavfilter/avcodec.c
index 605e5d24d8ba2c58f84ac349945e4c0f4cc3351b..ba11a2549255bb5834402b6425d370908c981c6c 100644
--- a/libavfilter/avcodec.c
+++ b/libavfilter/avcodec.c
@@ -116,7 +116,7 @@ int avfilter_copy_buf_props(AVFrame *dst, const AVFilterBufferRef *src)
         planes      = av_sample_fmt_is_planar(src->format) ? nb_channels : 1;
 
         if (planes > FF_ARRAY_ELEMS(dst->data)) {
-            dst->extended_data = av_mallocz(planes * sizeof(*dst->extended_data));
+            dst->extended_data = av_mallocz_array(planes, sizeof(*dst->extended_data));
             if (!dst->extended_data)
                 return AVERROR(ENOMEM);
             memcpy(dst->extended_data, src->extended_data,