[FFmpeg-devel] [PATCH 1/2] avutil/file_open: Fix build error with wasi

Zhao Zhili quinkblack at foxmail.com
Fri Jun 28 07:45:59 EEST 2024


From: Zhao Zhili <zhilizhao at tencent.com>

Don't assume tempnam is available when !HAVE_MKSTEMP. Check tempnam
explicitly in configure.

Signed-off-by: Zhao Zhili <zhilizhao at tencent.com>
---
 configure             | 2 ++
 libavutil/file_open.c | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 7685c95fbb..bd3c1d4838 100755
--- a/configure
+++ b/configure
@@ -2413,6 +2413,7 @@ SYSTEM_FUNCS="
     sysconf
     sysctl
     sysctlbyname
+    tempnam
     usleep
     UTGetOSTypeFromString
     VirtualAlloc
@@ -6548,6 +6549,7 @@ check_struct "sys/stat.h" "struct stat" st_mtim.tv_nsec -D_BSD_SOURCE
 check_func  strerror_r
 check_func  sysconf
 check_func  sysctl
+check_func  tempnam
 check_func  usleep
 
 check_func_headers conio.h kbhit
diff --git a/libavutil/file_open.c b/libavutil/file_open.c
index 24ef33e3da..eef6d83706 100644
--- a/libavutil/file_open.c
+++ b/libavutil/file_open.c
@@ -112,7 +112,7 @@ int avpriv_tempfile(const char *prefix, char **filename, int log_offset, void *l
 {
     FileLogContext file_log_ctx = { &file_log_ctx_class, log_offset, log_ctx };
     int fd = -1;
-#if !HAVE_MKSTEMP
+#if HAVE_TEMPNAM
     void *ptr= tempnam(NULL, prefix);
     if(!ptr)
         ptr= tempnam(".", prefix);
-- 
2.42.0



More information about the ffmpeg-devel mailing list