fix possible refleaks
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index 3864b48..7c98cfd 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -2235,8 +2235,10 @@
                 (add_weak && strcmp(s, "__weakref__") == 0))
                 continue;
             tmp =_Py_Mangle(name, tmp);
-            if (!tmp)
+            if (!tmp) {
+                Py_DECREF(newslots);
                 goto bad_slots;
+            }
             PyList_SET_ITEM(newslots, j, tmp);
             j++;
         }