Browse Source

node: provide snprintf implementation on windows

_snprintf() doesn't zero-terminate the buffer on overflow.
v0.9.1-release
Ben Noordhuis 13 years ago
parent
commit
a4a04f932e
  1. 12
      src/node_internals.h

12
src/node_internals.h

@ -27,7 +27,17 @@
namespace node {
#ifdef _WIN32
# define snprintf _snprintf
// emulate snprintf() on windows, _snprintf() doesn't zero-terminate the buffer
// on overflow...
#include <stdarg.h>
inline static int snprintf(char* buf, unsigned int len, const char* fmt, ...) {
va_list ap;
va_start(ap, fmt);
int n = _vsprintf_p(buf, len, fmt, ap);
if (len) buf[len - 1] = '\0';
va_end(ap);
return n;
}
#endif
#ifndef offset_of

Loading…
Cancel
Save