diff options
Diffstat (limited to 'Python/getargs.c')
| -rw-r--r-- | Python/getargs.c | 7 | 
1 files changed, 3 insertions, 4 deletions
| diff --git a/Python/getargs.c b/Python/getargs.c index 600941d..e1cef0c 100644 --- a/Python/getargs.c +++ b/Python/getargs.c @@ -551,7 +551,7 @@ convertitem(PyObject *arg, const char **p_format, va_list *p_va, int flags,  #define UNICODE_DEFAULT_ENCODING(arg) \ -    _PyUnicode_AsDefaultEncodedString(arg, NULL) +    _PyUnicode_AsDefaultEncodedString(arg)  /* Format an error message generated by convertsimple(). */ @@ -966,9 +966,10 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,      case 'u': /* raw unicode buffer (Py_UNICODE *) */      case 'Z': /* raw unicode buffer or None */      { +        Py_UNICODE **p = va_arg(*p_va, Py_UNICODE **); +          if (*format == '#') { /* any buffer-like object */              /* "s#" or "Z#" */ -            Py_UNICODE **p = va_arg(*p_va, Py_UNICODE **);              FETCH_SIZE;              if (c == 'Z' && arg == Py_None) { @@ -984,8 +985,6 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,              format++;          } else {              /* "s" or "Z" */ -            Py_UNICODE **p = va_arg(*p_va, Py_UNICODE **); -              if (c == 'Z' && arg == Py_None)                  *p = NULL;              else if (PyUnicode_Check(arg)) { | 
