diff --git a/libavcodec/libxvidff.c b/libavcodec/libxvidff.c
index 661b23bc61914a5b73eb32a2e8b65c843649bfc1..855aba1ec511fe80ea6b98fe5f13970a6ec12e0a 100644
--- a/libavcodec/libxvidff.c
+++ b/libavcodec/libxvidff.c
@@ -481,7 +481,7 @@ static av_cold int xvid_encode_close(AVCodecContext *avctx) {
     xvid_encore(x->encoder_handle, XVID_ENC_DESTROY, NULL, NULL);
 
     if( avctx->extradata != NULL )
-        av_free(avctx->extradata);
+        av_freep(&avctx->extradata);
     if( x->twopassbuffer != NULL ) {
         av_free(x->twopassbuffer);
         av_free(x->old_twopassbuffer);