Mercurial > hg > octave-kai > gnulib-hg
changeset 13197:5faa02e0b292
vasnprintf: Fix multiple test failures on mingw.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 10 Apr 2010 21:40:23 +0200 |
parents | 670e389ef70e |
children | 2f3ddf3c58a5 |
files | ChangeLog lib/vasnprintf.c |
diffstat | 2 files changed, 23 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2010-04-10 Bruno Haible <bruno@clisp.org> + + vasnprintf: Fix multiple test failures on mingw. + * lib/vasnprintf.c (SNPRINTF) [mingw]: Define to snprintf, not + _snprintf, or snwprintf, not _snwprintf. + 2010-04-10 Bruno Haible <bruno@clisp.org> write: Fix a C++ test error on mingw.
--- a/lib/vasnprintf.c +++ b/lib/vasnprintf.c @@ -148,8 +148,14 @@ # define USE_SNPRINTF 1 # if HAVE_DECL__SNWPRINTF /* On Windows, the function swprintf() has a different signature than - on Unix; we use the _snwprintf() function instead. */ -# define SNPRINTF _snwprintf + on Unix; we use the function _snwprintf() or - on mingw - snwprintf() + instead. The mingw function snwprintf() has fewer bugs than the + MSVCRT function _snwprintf(), so prefer that. */ +# if defined __MINGW32__ +# define SNPRINTF snwprintf +# else +# define SNPRINTF _snwprintf +# endif # else /* Unix. */ # define SNPRINTF swprintf @@ -167,8 +173,15 @@ # define USE_SNPRINTF 0 # endif # if HAVE_DECL__SNPRINTF - /* Windows. */ -# define SNPRINTF _snprintf + /* Windows. The mingw function snprintf() has fewer bugs than the MSVCRT + function _snprintf(), so prefer that. */ +# if defined __MINGW32__ +# define SNPRINTF snprintf + /* Here we need to call the native snprintf, not rpl_snprintf. */ +# undef snprintf +# else +# define SNPRINTF _snprintf +# endif # else /* Unix. */ # define SNPRINTF snprintf