diff --git a/libavcodec/vda_h264.c b/libavcodec/vda_h264.c
index 2d2d228745102be69e7c992e0b7fcb07c44ec3ca..5c8f5679f90e9bd87c746eac28661ddc559c0c4e 100644
--- a/libavcodec/vda_h264.c
+++ b/libavcodec/vda_h264.c
@@ -144,7 +144,7 @@ static void vda_decoder_callback(void *vda_hw_ctx,
         vda_frame *new_frame;
         vda_frame *queue_walker;
 
-        if (!(new_frame = av_mallocz(sizeof(vda_frame))))
+        if (!(new_frame = av_mallocz(sizeof(*new_frame))))
             return;
         new_frame->next_frame = NULL;
         new_frame->cv_buffer  = CVPixelBufferRetain(image_buffer);