diff --git a/libavformat/utils.c b/libavformat/utils.c
index 34eca17ec9c354d90cb6c65686d7bac4d59fc020..b4ca3428988c94d86a5b31657f60caae0cbda7fb 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -3525,7 +3525,7 @@ void avformat_free_context(AVFormatContext *s)
     av_dict_free(&s->metadata);
     av_freep(&s->streams);
     av_freep(&s->internal);
-    free_packet_buffer(&s->packet_buffer, &s->packet_buffer_end);
+    flush_packet_queue(s);
     av_free(s);
 }