Commit acf47b80 authored by Victor Stinner's avatar Victor Stinner

Fix my last change on PyUnicode_Join(): don't process separator if len==1

parent 25a4b29c
...@@ -9145,13 +9145,16 @@ PyUnicode_Join(PyObject *separator, PyObject *seq) ...@@ -9145,13 +9145,16 @@ PyUnicode_Join(PyObject *separator, PyObject *seq)
/* If singleton sequence with an exact Unicode, return that. */ /* If singleton sequence with an exact Unicode, return that. */
items = PySequence_Fast_ITEMS(fseq); items = PySequence_Fast_ITEMS(fseq);
if (seqlen == 1 && PyUnicode_CheckExact(items[0])) { if (seqlen == 1) {
if (PyUnicode_CheckExact(items[0])) {
res = items[0]; res = items[0];
Py_INCREF(res); Py_INCREF(res);
Py_DECREF(fseq); Py_DECREF(fseq);
return res; return res;
} }
sep = NULL;
}
else {
/* Set up sep and seplen */ /* Set up sep and seplen */
if (separator == NULL) { if (separator == NULL) {
/* fall back to a blank space separator */ /* fall back to a blank space separator */
...@@ -9177,6 +9180,7 @@ PyUnicode_Join(PyObject *separator, PyObject *seq) ...@@ -9177,6 +9180,7 @@ PyUnicode_Join(PyObject *separator, PyObject *seq)
above case of a blank separator */ above case of a blank separator */
Py_INCREF(sep); Py_INCREF(sep);
} }
}
/* There are at least two things to join, or else we have a subclass /* There are at least two things to join, or else we have a subclass
* of str in the sequence. * of str in the sequence.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment