[FFmpeg-devel] [PATCH 44/44] avformat/utils: Move ff_format_io_close.* to options.c, avformat.c
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Sat May 7 14:28:30 EEST 2022
These are not pure avio-functions, but auxiliary AVFormatContext
functions.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
libavformat/avformat.c | 14 ++++++++++++++
libavformat/options.c | 5 +++++
libavformat/utils.c | 18 ------------------
3 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/libavformat/avformat.c b/libavformat/avformat.c
index 3eae41d109..30d6ea6a49 100644
--- a/libavformat/avformat.c
+++ b/libavformat/avformat.c
@@ -33,6 +33,7 @@
#include "libavcodec/codec_desc.h"
#include "libavcodec/packet_internal.h"
#include "avformat.h"
+#include "avio.h"
#include "demux.h"
#include "internal.h"
@@ -774,3 +775,16 @@ void ff_format_set_url(AVFormatContext *s, char *url)
av_freep(&s->url);
s->url = url;
}
+
+int ff_format_io_close(AVFormatContext *s, AVIOContext **pb)
+{
+ int ret = 0;
+ if (*pb) {
+ if (s->io_close == ff_format_io_close_default || s->io_close == NULL)
+ ret = s->io_close2(s, *pb);
+ else
+ s->io_close(s, *pb);
+ }
+ *pb = NULL;
+ return ret;
+}
diff --git a/libavformat/options.c b/libavformat/options.c
index d306c86c63..0079a06d9a 100644
--- a/libavformat/options.c
+++ b/libavformat/options.c
@@ -151,6 +151,11 @@ static int io_open_default(AVFormatContext *s, AVIOContext **pb,
return ffio_open_whitelist(pb, url, flags, &s->interrupt_callback, options, s->protocol_whitelist, s->protocol_blacklist);
}
+void ff_format_io_close_default(AVFormatContext *s, AVIOContext *pb)
+{
+ avio_close(pb);
+}
+
static int io_close2_default(AVFormatContext *s, AVIOContext *pb)
{
return avio_close(pb);
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 667ed0c4c5..cf4d68bff9 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -575,24 +575,6 @@ int avformat_network_deinit(void)
return 0;
}
-void ff_format_io_close_default(AVFormatContext *s, AVIOContext *pb)
-{
- avio_close(pb);
-}
-
-int ff_format_io_close(AVFormatContext *s, AVIOContext **pb)
-{
- int ret = 0;
- if (*pb) {
- if (s->io_close == ff_format_io_close_default || s->io_close == NULL)
- ret = s->io_close2(s, *pb);
- else
- s->io_close(s, *pb);
- }
- *pb = NULL;
- return ret;
-}
-
int ff_is_http_proto(const char *filename) {
const char *proto = avio_find_protocol_name(filename);
return proto ? (!av_strcasecmp(proto, "http") || !av_strcasecmp(proto, "https")) : 0;
--
2.32.0
More information about the ffmpeg-devel
mailing list