[FFmpeg-devel] [PATCH 16/16] avutil/fifo: Properly deprecate av_tempfile()

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Mon Aug 29 02:34:48 EEST 2022


It has been deprecated in b4f59beeb4c2171879d0d7607a4a7d6165f07791,
but the attribute_deprecated was not set and there was no entry
in APIchanges. This commit adds these and schedules it for removal.
Given that the reason behind the deprecation is exactly the same
as in av_fopen_utf8(), reuse its FF_API_AV_FOPEN_UTF8.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 doc/APIchanges   | 3 +++
 libavutil/file.c | 2 ++
 libavutil/file.h | 4 ++++
 3 files changed, 9 insertions(+)

diff --git a/doc/APIchanges b/doc/APIchanges
index 1cd13d4ed3..45fd8f251d 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -14,6 +14,9 @@ libavutil:     2021-04-27
 
 API changes, most recent first:
 
+2022-08-28 - xxxxxxxxxx - lavu 57.xx.100 - file.h
+  Deprecate av_tempfile() without replacement.
+
 2022-08-03 - xxxxxxxxxx - lavu 57.34.100 - pixfmt.h
   Add AV_PIX_FMT_VUYX.
 
diff --git a/libavutil/file.c b/libavutil/file.c
index edee6aaf80..6a2f3aa91c 100644
--- a/libavutil/file.c
+++ b/libavutil/file.c
@@ -155,6 +155,8 @@ void av_file_unmap(uint8_t *bufptr, size_t size)
 #endif
 }
 
+#if FF_API_AV_FOPEN_UTF8
 int av_tempfile(const char *prefix, char **filename, int log_offset, void *log_ctx) {
     return avpriv_tempfile(prefix, filename, log_offset, log_ctx);
 }
+#endif
diff --git a/libavutil/file.h b/libavutil/file.h
index 8ec210e783..511c100db4 100644
--- a/libavutil/file.h
+++ b/libavutil/file.h
@@ -22,6 +22,7 @@
 #include <stddef.h>
 #include <stdint.h>
 
+#include "version.h"
 #include "attributes.h"
 
 /**
@@ -55,6 +56,7 @@ int av_file_map(const char *filename, uint8_t **bufptr, size_t *size,
  */
 void av_file_unmap(uint8_t *bufptr, size_t size);
 
+#if FF_API_AV_FOPEN_UTF8
 /**
  * Wrapper to work around the lack of mkstemp() on mingw.
  * Also, tries to create file in /tmp first, if possible.
@@ -67,6 +69,8 @@ void av_file_unmap(uint8_t *bufptr, size_t size);
  *       libraries and could interfere with the calling application.
  * @deprecated as fd numbers cannot be passed saftely between libs on some platforms
  */
+attribute_deprecated
 int av_tempfile(const char *prefix, char **filename, int log_offset, void *log_ctx);
+#endif
 
 #endif /* AVUTIL_FILE_H */
-- 
2.34.1



More information about the ffmpeg-devel mailing list