mirror of
https://github.com/nu774/fdkaac.git
synced 2024-12-31 17:47:23 +01:00
support for i686-pc-mingw32 (missing _vscprintf)
This commit is contained in:
parent
61b6a9e383
commit
dac71de305
@ -32,7 +32,7 @@ AC_CHECK_TYPES([ptrdiff_t])
|
|||||||
|
|
||||||
AC_SYS_LARGEFILE
|
AC_SYS_LARGEFILE
|
||||||
AC_FUNC_FSEEKO
|
AC_FUNC_FSEEKO
|
||||||
AC_CHECK_FUNCS([gettimeofday nl_langinfo strdup])
|
AC_CHECK_FUNCS([gettimeofday nl_langinfo strdup _vscprintf])
|
||||||
AC_CHECK_FUNC(getopt_long)
|
AC_CHECK_FUNC(getopt_long)
|
||||||
AM_CONDITIONAL([FDK_NO_GETOPT_LONG],[test "$ac_cv_func_getopt_long" != "yes"])
|
AM_CONDITIONAL([FDK_NO_GETOPT_LONG],[test "$ac_cv_func_getopt_long" != "yes"])
|
||||||
AC_SEARCH_LIBS([aacEncOpen],[fdk-aac],[],[],[])
|
AC_SEARCH_LIBS([aacEncOpen],[fdk-aac],[],[],[])
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
#include <assert.h>
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <sys/timeb.h>
|
#include <sys/timeb.h>
|
||||||
@ -92,6 +93,20 @@ char *aacenc_to_utf8(const char *s)
|
|||||||
return _strdup(s);
|
return _strdup(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if defined(__MINGW32__) && !defined(HAVE__VSCPRINTF)
|
||||||
|
int _vscprintf(const char *fmt, va_list ap)
|
||||||
|
{
|
||||||
|
static int (*fp_vscprintf)(const char *, va_list) = 0;
|
||||||
|
if (!fp_vscprintf) {
|
||||||
|
HANDLE h = GetModuleHandleA("msvcrt.dll");
|
||||||
|
FARPROC fp = GetProcAddress(h, "_vscprintf");
|
||||||
|
InterlockedCompareExchangePointer(&fp_vscprintf, fp, 0);
|
||||||
|
}
|
||||||
|
assert(fp_vscprintf);
|
||||||
|
return fp_vscprintf(fmt, ap);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int aacenc_fprintf(FILE *fp, const char *fmt, ...)
|
int aacenc_fprintf(FILE *fp, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
va_list ap;
|
va_list ap;
|
||||||
|
Loading…
Reference in New Issue
Block a user