PR #20416 opened by mkver
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20416
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20416.patch

It makes no sense to ever call it that way given that
avio_context_free() accepts a pointer to a pointer to an AVIOContext.
Other double-pointer-free functions like av_freep() also do it
that way (and therefore avio_context_free(NULL) still crashes
even with 870cfed2317e311a71bc14773332486a162f059c).

Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com>


>From cd21fa41c70bdc03660e0566649e9cf2bd7441b7 Mon Sep 17 00:00:00 2001
From: Andreas Rheinhardt <andreas.rheinha...@outlook.com>
Date: Wed, 3 Sep 2025 15:51:51 +0200
Subject: [PATCH] avformat/aviobuf: Don't pretend to support
 avio_context_free(NULL)

It makes no sense to ever call it that way given that
avio_context_free() accepts a pointer to a pointer to an AVIOContext.
Other double-pointer-free functions like av_freep() also do it
that way (and therefore avio_context_free(NULL) still crashes
even with 870cfed2317e311a71bc14773332486a162f059c).

Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com>
---
 libavformat/aviobuf.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index 2e65f50006..6a6ec36e28 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -125,8 +125,8 @@ AVIOContext *avio_alloc_context(
 
 void avio_context_free(AVIOContext **ps)
 {
-    if (ps && *ps) {
-        AVIOContext *s = *ps;
+    AVIOContext *s = *ps;
+    if (s) {
         av_freep(&s->protocol_whitelist);
         av_freep(&s->protocol_blacklist);
     }
-- 
2.49.1

_______________________________________________
ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org
To unsubscribe send an email to ffmpeg-devel-le...@ffmpeg.org

Reply via email to