Speed-up the joiner call by avoiding Py_BuildValue().
diff --git a/Modules/cStringIO.c b/Modules/cStringIO.c
index ee11878..4ec5e88 100644
--- a/Modules/cStringIO.c
+++ b/Modules/cStringIO.c
@@ -436,7 +436,11 @@
 
         if (PyObject_Size(args) < 0) return NULL;
 
-        tmp = PyObject_CallFunction(joiner, "O", args);
+	args = PyTuple_Pack(1, args);
+	if (args == NULL)
+		return NULL;
+	tmp = PyObject_Call(joiner, args, NULL);
+	Py_DECREF(args);
         UNLESS (tmp) return NULL;
 
         args = PyTuple_Pack(1, tmp);