Fix my last change on PyUnicode_Join(): don't process separator if len==1
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 3a0f468..72007d9 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -9145,37 +9145,41 @@
 
     /* If singleton sequence with an exact Unicode, return that. */
     items = PySequence_Fast_ITEMS(fseq);
-    if (seqlen == 1 && PyUnicode_CheckExact(items[0])) {
-        res = items[0];
-        Py_INCREF(res);
-        Py_DECREF(fseq);
-        return res;
-    }
-
-    /* Set up sep and seplen */
-    if (separator == NULL) {
-        /* fall back to a blank space separator */
-        sep = PyUnicode_FromOrdinal(' ');
-        if (!sep)
-            goto onError;
-        maxchar = 32;
+    if (seqlen == 1) {
+        if (PyUnicode_CheckExact(items[0])) {
+            res = items[0];
+            Py_INCREF(res);
+            Py_DECREF(fseq);
+            return res;
+        }
+        sep = NULL;
     }
     else {
-        if (!PyUnicode_Check(separator)) {
-            PyErr_Format(PyExc_TypeError,
-                         "separator: expected str instance,"
-                         " %.80s found",
-                         Py_TYPE(separator)->tp_name);
-            goto onError;
+        /* Set up sep and seplen */
+        if (separator == NULL) {
+            /* fall back to a blank space separator */
+            sep = PyUnicode_FromOrdinal(' ');
+            if (!sep)
+                goto onError;
+            maxchar = 32;
         }
-        if (PyUnicode_READY(separator))
-            goto onError;
-        sep = separator;
-        seplen = PyUnicode_GET_LENGTH(separator);
-        maxchar = PyUnicode_MAX_CHAR_VALUE(separator);
-        /* inc refcount to keep this code path symmetric with the
-           above case of a blank separator */
-        Py_INCREF(sep);
+        else {
+            if (!PyUnicode_Check(separator)) {
+                PyErr_Format(PyExc_TypeError,
+                             "separator: expected str instance,"
+                             " %.80s found",
+                             Py_TYPE(separator)->tp_name);
+                goto onError;
+            }
+            if (PyUnicode_READY(separator))
+                goto onError;
+            sep = separator;
+            seplen = PyUnicode_GET_LENGTH(separator);
+            maxchar = PyUnicode_MAX_CHAR_VALUE(separator);
+            /* inc refcount to keep this code path symmetric with the
+               above case of a blank separator */
+            Py_INCREF(sep);
+        }
     }
 
     /* There are at least two things to join, or else we have a subclass