diff --git a/libavutil/log.c b/libavutil/log.c
index bd46b0c054ca603752ea6e56a57ab1cd4f1eda46..7d574f6f7b0c08a0ba47e8b1c2386d48d57c982f 100644
--- a/libavutil/log.c
+++ b/libavutil/log.c
@@ -182,12 +182,9 @@ void av_log_set_callback(void (*callback)(void*, int, const char*, va_list))
     av_log_callback = callback;
 }
 
-static void missing_feature_sample(int sample, void *avc, const char *msg, ...)
+static void missing_feature_sample(int sample, void *avc, const char *msg,
+                                   va_list argument_list)
 {
-    va_list argument_list;
-
-    va_start(argument_list, msg);
-
     av_vlog(avc, AV_LOG_WARNING, msg, argument_list);
     av_log(avc, AV_LOG_WARNING, " is not implemented. Update your Libav "
            "version to the newest one from Git. If the problem still "
@@ -197,8 +194,6 @@ static void missing_feature_sample(int sample, void *avc, const char *msg, ...)
         av_log(avc, AV_LOG_WARNING, "If you want to help, upload a sample "
                "of this file to ftp://upload.libav.org/incoming/ "
                "and contact the libav-devel mailing list.\n");
-
-    va_end(argument_list);
 }
 
 void avpriv_request_sample(void *avc, const char *msg, ...)