mirror of
https://github.com/python/cpython.git
synced 2025-09-03 23:41:18 +00:00
va_end() all va_copy()ed va_lists.
This commit is contained in:
parent
1c56bf0bad
commit
2f2fee19ec
4 changed files with 26 additions and 7 deletions
|
@ -467,8 +467,7 @@ va_build_value(const char *format, va_list va, int flags)
|
|||
const char *f = format;
|
||||
int n = countformat(f, '\0');
|
||||
va_list lva;
|
||||
|
||||
va_copy(lva, va);
|
||||
PyObject *retval;
|
||||
|
||||
if (n < 0)
|
||||
return NULL;
|
||||
|
@ -476,9 +475,14 @@ va_build_value(const char *format, va_list va, int flags)
|
|||
Py_INCREF(Py_None);
|
||||
return Py_None;
|
||||
}
|
||||
if (n == 1)
|
||||
return do_mkvalue(&f, &lva, flags);
|
||||
return do_mktuple(&f, &lva, '\0', n, flags);
|
||||
va_copy(lva, va);
|
||||
if (n == 1) {
|
||||
retval = do_mkvalue(&f, &lva, flags);
|
||||
} else {
|
||||
retval = do_mktuple(&f, &lva, '\0', n, flags);
|
||||
}
|
||||
va_end(lva);
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue