[FFmpeg-devel] [PATCH 2/2] lavf/dashenc: Use avpriv_io_delete to delete files.
Andrey Semashev
andrey.semashev at gmail.com
Thu Nov 29 20:18:18 EET 2018
This fixes incorrect handling of file URIs (i.e. when the filename starts
with "file:", possibly followed by URI authority).
---
libavformat/dashenc.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
index 6ce70e0076..426dc91bcc 100644
--- a/libavformat/dashenc.c
+++ b/libavformat/dashenc.c
@@ -25,6 +25,7 @@
#include <unistd.h>
#endif
+#include "libavutil/error.h"
#include "libavutil/avassert.h"
#include "libavutil/avutil.h"
#include "libavutil/avstring.h"
@@ -1326,8 +1327,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);
+ }
}
}
--
2.19.1
More information about the ffmpeg-devel
mailing list