diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 706f7e26944d6d912c7d21f0881fbab54085531a..141fb9d7ca1729a62377c63b5fa6558bc70f57d2 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -834,6 +834,9 @@ void avfilter_free(AVFilterContext *filter)
     int i;
     AVFilterLink *link;
 
+    if (!filter)
+        return;
+
     if (filter->filter->uninit)
         filter->filter->uninit(filter);