Fix two compile-blockers in tor_vasprintf().

1) mingw doesn't have _vscprintf(); mingw instead has a working snprintf.

2) windows compilers that _do_ have a working _vscprintf spell it so; they do
   not spell it _vcsprintf().
This commit is contained in:
Nick Mathewson 2010-04-19 16:37:26 -04:00
parent 84924fcd30
commit af9dd4af02
2 changed files with 5 additions and 2 deletions

View File

@ -0,0 +1,3 @@
o Major bugfixes:
- Fix two typos in tor_vasprintf() that prevented compilation in
Windows.

View File

@ -355,12 +355,12 @@ tor_vasprintf(char **strp, const char *fmt, va_list args)
else else
*strp = strp_tmp; *strp = strp_tmp;
return r; return r;
#elif defined(MS_WINDOWS) #elif defined(_MSC_VER)
/* On Windows, _vsnprintf won't tell us the length of the string if it /* On Windows, _vsnprintf won't tell us the length of the string if it
* overflows, so we need to use _vcsprintf to tell how much to allocate */ * overflows, so we need to use _vcsprintf to tell how much to allocate */
int len, r; int len, r;
char *res; char *res;
len = _vcsprintf(fmt, args); len = _vscprintf(fmt, args);
if (len < 0) { if (len < 0) {
*strp = NULL; *strp = NULL;
return -1; return -1;