From a68a975584462e1cdd1b810956e43025efb6eb04 Mon Sep 17 00:00:00 2001 From: Andrey Semashev Date: Fri, 30 Nov 2018 12:03:45 +0300 Subject: [PATCH] lavf/dashenc: Use avpriv_io_delete to delete files. This fixes incorrect handling of file pseudo-URIs (i.e. when the filename starts with "file:"). --- libavformat/dashenc.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index a924f4af97..f455a24af6 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -1347,8 +1347,13 @@ static void dashenc_delete_file(AVFormatContext *s, char *filename) { av_dict_free(&http_opts); ff_format_io_close(s, &out); - } else if (unlink(filename) < 0) { - av_log(s, AV_LOG_ERROR, "failed to delete %s: %s\n", filename, strerror(errno)); + } else { + int res = avpriv_io_delete(filename); + if (res < 0) { + char errbuf[AV_ERROR_MAX_STRING_SIZE]; + av_strerror(res, errbuf, sizeof(errbuf)); + av_log(s, (res == AVERROR(ENOENT) ? AV_LOG_WARNING : AV_LOG_ERROR), "failed to delete %s: %s\n", filename, errbuf); + } } }