From 467f157fc65045a7a60b0360d4503ba1e665da0a Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Sat, 7 May 2022 09:34:10 +0200 Subject: [PATCH] avformat/utils: Move ff_format_io_close.* to options.c, avformat.c These are not pure avio-functions, but auxiliary AVFormatContext functions. Signed-off-by: Andreas Rheinhardt --- 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;