mirror of
https://github.com/python/cpython.git
synced 2025-07-19 01:05:26 +00:00
bpo-38913: Fix segfault in Py_BuildValue("(s#O)", ...) if entered with exception raised. (GH-18656)
This commit is contained in:
parent
2565edec2c
commit
28d0bcac8b
3 changed files with 48 additions and 3 deletions
|
@ -343,11 +343,11 @@ do_mkvalue(const char **p_format, va_list *p_va, int flags)
|
|||
if (flags & FLAG_SIZE_T)
|
||||
n = va_arg(*p_va, Py_ssize_t);
|
||||
else {
|
||||
n = va_arg(*p_va, int);
|
||||
if (PyErr_WarnEx(PyExc_DeprecationWarning,
|
||||
"PY_SSIZE_T_CLEAN will be required for '#' formats", 1)) {
|
||||
return NULL;
|
||||
}
|
||||
n = va_arg(*p_va, int);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -396,11 +396,11 @@ do_mkvalue(const char **p_format, va_list *p_va, int flags)
|
|||
if (flags & FLAG_SIZE_T)
|
||||
n = va_arg(*p_va, Py_ssize_t);
|
||||
else {
|
||||
n = va_arg(*p_va, int);
|
||||
if (PyErr_WarnEx(PyExc_DeprecationWarning,
|
||||
"PY_SSIZE_T_CLEAN will be required for '#' formats", 1)) {
|
||||
return NULL;
|
||||
}
|
||||
n = va_arg(*p_va, int);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -434,11 +434,11 @@ do_mkvalue(const char **p_format, va_list *p_va, int flags)
|
|||
if (flags & FLAG_SIZE_T)
|
||||
n = va_arg(*p_va, Py_ssize_t);
|
||||
else {
|
||||
n = va_arg(*p_va, int);
|
||||
if (PyErr_WarnEx(PyExc_DeprecationWarning,
|
||||
"PY_SSIZE_T_CLEAN will be required for '#' formats", 1)) {
|
||||
return NULL;
|
||||
}
|
||||
n = va_arg(*p_va, int);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue