224{
226
227#if defined(__DCL_COMPILE_UNICODE__) && defined(_MSC_VER)
228 String format;
229 if (
STRSTR(_format, L
"%s")) {
230 __DCL_TRACE3(L
"Warning!! vformat _format [%ls] included [%ls]. replaced to [%ls]\n",
231 _format, L"%s", L"%hs");
232 format.assign(_format);
233 format = format.replace(L"%s", L"%hs");
234 _format = format;
235 }
236#endif
237
238#define __EXTENDED_MAX 1024 * 1024
239#define __EXTEND_MIN 32
246 }
247
248 va_list arglist;
249 va_copy(arglist, _arglist);
253 _format,
254 arglist
255 );
256 va_end(arglist);
257
258
259
260
265 }
266
267 extend *= 2;
269 extend =
__MAX(extend,
n);
270 }
271 extended += extend;
272 __DCL_TRACE2(
__T(
"VSNPRINTF Failed(%d) extend[%zd] and Retry\n"),
n, extend);
273 }
274
275
276
277 __DCL_TRACE2(
__T(
"Warning!! VSNPRINTF Failed(%d) extend[%zd]\n"),
n, extend);
279}
#define VSNPRINTF(buf, len, fmt, args)
#define __DCL_TRACE3(fmt, arg1, arg2, arg3)
#define __DCL_TRACE2(fmt, arg1, arg2)
size_t __MAX(size_t x, size_t y)
static void extend(BUFFER_T *&_buf, size_t _len)