From: Zhao Zhili <zhiliz...@tencent.com> Don't assume tempnam is available when !HAVE_MKSTEMP. Check tempnam explicitly in configure.
Signed-off-by: Zhao Zhili <zhiliz...@tencent.com> --- configure | 2 ++ libavutil/file_open.c | 8 +++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/configure b/configure index fed4c44cd1..696a26ee74 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..4692035d55 100644 --- a/libavutil/file_open.c +++ b/libavutil/file_open.c @@ -112,7 +112,10 @@ 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_MKSTEMP + size_t len = strlen(prefix) + 12; /* room for "/tmp/" and "XXXXXX\0" */ + *filename = av_malloc(len); +#elif HAVE_TEMPNAM void *ptr= tempnam(NULL, prefix); if(!ptr) ptr= tempnam(".", prefix); @@ -120,8 +123,7 @@ int avpriv_tempfile(const char *prefix, char **filename, int log_offset, void *l #undef free free(ptr); #else - size_t len = strlen(prefix) + 12; /* room for "/tmp/" and "XXXXXX\0" */ - *filename = av_malloc(len); + return AVERROR(ENOSYS); #endif /* -----common section-----*/ if (!*filename) { -- 2.42.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".