diff --git a/nbase/nbase_misc.c b/nbase/nbase_misc.c index 72ea0b0a3..8a231ced9 100644 --- a/nbase/nbase_misc.c +++ b/nbase/nbase_misc.c @@ -177,12 +177,16 @@ int socket_errno() { */ char *socket_strerror(int errnum) { #ifdef WIN32 - static char buffer[128]; + static char buffer[256]; - FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM | + if (!FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_MAX_WIDTH_MASK, - 0, errnum, 0, buffer, sizeof(buffer), NULL); + 0, errnum, 0, buffer, sizeof(buffer), NULL)) + { + error("FormatMessage error: %08x", GetLastError()); + buffer[0] = '\0'; + }; return buffer; #else