* smallprint.cc (__small_vsprintf): Free allocated buffer rather than pointer
into the buffer.
This commit is contained in:
parent
da061b9cd2
commit
1264c4d4fa
|
@ -1,3 +1,8 @@
|
|||
2008-03-02 Christopher Faylor <me+cygwin@cgf.cx>
|
||||
|
||||
* smallprint.cc (__small_vsprintf): Free allocated buffer rather than
|
||||
pointer into the buffer.
|
||||
|
||||
2008-03-01 Christopher Faylor <me+cygwin@cgf.cx>
|
||||
|
||||
* cygtls.h (_cygtls::handle_threadlist_exception): Eliminate.
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
/* smallprint.cc: small print routines for WIN32
|
||||
|
||||
Copyright 1996, 1998, 2000, 2001, 2002, 2003, 2005, 2006, 2007 Red Hat, Inc.
|
||||
Copyright 1996, 1998, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2008
|
||||
Red Hat, Inc.
|
||||
|
||||
This file is part of Cygwin.
|
||||
|
||||
|
@ -195,17 +196,18 @@ __small_vsprintf (char *dst, const char *fmt, va_list ap)
|
|||
us = va_arg (ap, PUNICODE_STRING);
|
||||
wfillin:
|
||||
{
|
||||
char *tmp;
|
||||
char *tmpbuf;
|
||||
|
||||
if (!sys_wcstombs_alloc (&tmp, HEAP_NOTHEAP, us->Buffer,
|
||||
if (!sys_wcstombs_alloc (&tmpbuf, HEAP_NOTHEAP, us->Buffer,
|
||||
us->Length / sizeof (WCHAR)))
|
||||
{
|
||||
s = "invalid UNICODE_STRING";
|
||||
goto fillin;
|
||||
}
|
||||
char *tmp = tmpbuf;
|
||||
for (i = 0; *tmp && i < n; i++)
|
||||
*dst++ = *tmp++;
|
||||
free (tmp);
|
||||
free (tmpbuf);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
Loading…
Reference in New Issue