53 #ifndef NEED_VASPRINTF
54 #define NEED_VASPRINTF 0
58 int vasprintf (
char** strp,
const char* fmt, va_list ap)
60 int len = _vscprintf (fmt, ap);
67 *strp = (
char*)malloc ((
size_t)len + 1);
73 len = _vsnprintf (*strp, (
size_t)len + 1, fmt, ap);
95 va_start(ap, failureReason);
96 #if defined(__MINGW64__)
97 returnValue = __mingw_vasprintf(&stringP, failureReason, ap);
99 returnValue = vasprintf(&stringP, failureReason, ap);
103 if ((NULL != stringP) && (returnValue != -1)) {
104 reason = std::string(stringP);
127 return this->
reason.c_str();