mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
bpo-39008: Require Py_ssize_t for PySys_Audit formats rather than raise a deprecation warning (GH-17540)
This commit is contained in:
parent
ac229116a3
commit
b8cbe74c34
3 changed files with 12 additions and 1 deletions
|
@ -320,10 +320,18 @@ accessible to C code. They all work with the current interpreter thread's
|
|||
arguments to this function will be consumed, using it may cause reference
|
||||
leaks.)
|
||||
|
||||
Note that ``#`` format characters should always be treated as
|
||||
``Py_ssize_t``, regardless of whether ``PY_SSIZE_T_CLEAN`` was defined.
|
||||
|
||||
:func:`sys.audit` performs the same function from Python code.
|
||||
|
||||
.. versionadded:: 3.8
|
||||
|
||||
.. versionchanged:: 3.8.2
|
||||
|
||||
Require ``Py_ssize_t`` for ``#`` format characters. Previously, an
|
||||
unavoidable deprecation warning was raised.
|
||||
|
||||
|
||||
.. c:function:: int PySys_AddAuditHook(Py_AuditHookFunction hook, void *userData)
|
||||
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
:c:func:`PySys_Audit` now requires ``Py_ssize_t`` to be used for size
|
||||
arguments in the format string, regardless of whethen ``PY_SSIZE_T_CLEAN``
|
||||
was defined at include time.
|
|
@ -181,7 +181,7 @@ PySys_Audit(const char *event, const char *argFormat, ...)
|
|||
if (argFormat && argFormat[0]) {
|
||||
va_list args;
|
||||
va_start(args, argFormat);
|
||||
eventArgs = Py_VaBuildValue(argFormat, args);
|
||||
eventArgs = _Py_VaBuildValue_SizeT(argFormat, args);
|
||||
va_end(args);
|
||||
if (eventArgs && !PyTuple_Check(eventArgs)) {
|
||||
PyObject *argTuple = PyTuple_Pack(1, eventArgs);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue