Browse Source

Proper check for mkstemp().

Originally committed as revision 9596 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Ramiro Polla 18 years ago
parent
commit
6ffa87d325
2 changed files with 6 additions and 3 deletions
  1. +3
    -0
      configure
  2. +3
    -3
      libavcodec/utils.c

+ 3
- 0
configure View File

@@ -673,6 +673,7 @@ HAVE_LIST="
machine_ioctl_meteor_h machine_ioctl_meteor_h
malloc_h malloc_h
memalign memalign
mkstemp
mlib mlib
ppc64 ppc64
sdl sdl
@@ -1507,6 +1508,8 @@ fi


check_header byteswap.h check_header byteswap.h


check_func mkstemp

check_header arpa/inet.h check_header arpa/inet.h


check_func inet_aton check_func inet_aton


+ 3
- 3
libavcodec/utils.c View File

@@ -34,7 +34,7 @@
#include <stdarg.h> #include <stdarg.h>
#include <limits.h> #include <limits.h>
#include <float.h> #include <float.h>
#ifdef __MINGW32__
#if !defined(HAVE_MKSTEMP)
#include <fcntl.h> #include <fcntl.h>
#endif #endif


@@ -1333,7 +1333,7 @@ unsigned int av_xiphlacing(unsigned char *s, unsigned int v)
* and opened file name in **filename. */ * and opened file name in **filename. */
int av_tempfile(char *prefix, char **filename) { int av_tempfile(char *prefix, char **filename) {
int fd=-1; int fd=-1;
#ifdef __MINGW32__
#if !defined(HAVE_MKSTEMP)
*filename = tempnam(".", prefix); *filename = tempnam(".", prefix);
#else #else
size_t len = strlen(prefix) + 12; /* room for "/tmp/" and "XXXXXX\0" */ size_t len = strlen(prefix) + 12; /* room for "/tmp/" and "XXXXXX\0" */
@@ -1344,7 +1344,7 @@ int av_tempfile(char *prefix, char **filename) {
av_log(NULL, AV_LOG_ERROR, "ff_tempfile: Cannot allocate file name\n"); av_log(NULL, AV_LOG_ERROR, "ff_tempfile: Cannot allocate file name\n");
return -1; return -1;
} }
#ifdef __MINGW32__
#if !defined(HAVE_MKSTEMP)
fd = open(*filename, _O_RDWR | _O_BINARY | _O_CREAT, 0444); fd = open(*filename, _O_RDWR | _O_BINARY | _O_CREAT, 0444);
#else #else
snprintf(*filename, len, "/tmp/%sXXXXXX", prefix); snprintf(*filename, len, "/tmp/%sXXXXXX", prefix);


Loading…
Cancel
Save