Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork33.3k
Closed
Description
There is yet one bug in handling errors in getargs.c.
skipitem() returns NULL on success and non-NULL string containing an error message on error. Except one case: when the# suffix is used while PY_SSIZE_T_CLEAN is not defined. In this case an error is set andskipitem() returns NULL, but all callers ofskipitem() do not expect it.
Currently this bug is only causes a hang if an optional parameter is a tuple containing a nested type with the "#" suffix, e.g."...|(s#)...".
3.9 is most likely also affected, but only if you turn DeprecationWarning into exception (run Python with option-Werror). I am wondering whether it can be considered a security issue.@ambv