* sigproc.h (cygwait): Delete duplicate va_start and add matching va_end.

This commit is contained in:
Christopher Faylor 2011-12-10 18:12:28 +00:00
parent bc1d321c57
commit 83ebb09239
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2011-12-10 Christopher Faylor <me.cygwin2011@cgf.cx>
* sigproc.h (cygwait): Delete duplicate va_start and add matching
va_end.
2011-12-10 Christopher Faylor <me.cygwin2011@cgf.cx> 2011-12-10 Christopher Faylor <me.cygwin2011@cgf.cx>
* sigproc.h (cygwait): Tweak test for cancellable event to make it a * sigproc.h (cygwait): Tweak test for cancellable event to make it a

View File

@ -85,11 +85,13 @@ static inline DWORD
cygwait (DWORD n, DWORD howlong, ...) cygwait (DWORD n, DWORD howlong, ...)
{ {
va_list ap; va_list ap;
va_start (ap, howlong);
HANDLE w4[n + 2]; HANDLE w4[n + 2];
va_start (ap, howlong); va_start (ap, howlong);
for (unsigned i = 0; i < n; i++) for (unsigned i = 0; i < n; i++)
w4[i] = va_arg (ap, HANDLE); w4[i] = va_arg (ap, HANDLE);
va_end (ap);
w4[n++] = signal_arrived; w4[n++] = signal_arrived;
if ((w4[n] = pthread::get_cancel_event ()) != NULL) if ((w4[n] = pthread::get_cancel_event ()) != NULL)
n++; n++;