Fix a memory leak in str_subtype_new().  (All the other
xxx_subtype_new() functions are OK, but I goofed up in this one. :-( )
diff --git a/Objects/stringobject.c b/Objects/stringobject.c
index 7675f7e..4c28500 100644
--- a/Objects/stringobject.c
+++ b/Objects/stringobject.c
@@ -2713,9 +2713,9 @@
 		return NULL;
 	assert(PyString_Check(tmp));
 	new = type->tp_alloc(type, n = PyString_GET_SIZE(tmp));
-	if (new == NULL)
-		return NULL;
-	memcpy(PyString_AS_STRING(new), PyString_AS_STRING(tmp), n+1);
+	if (new != NULL)
+		memcpy(PyString_AS_STRING(new), PyString_AS_STRING(tmp), n+1);
+	Py_DECREF(tmp);
 	return new;
 }