]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Issue #17034: Use Py_CLEAR() in stringobject.c.
authorSerhiy Storchaka <storchaka@gmail.com>
Sat, 2 Feb 2013 16:43:58 +0000 (18:43 +0200)
committerSerhiy Storchaka <storchaka@gmail.com>
Sat, 2 Feb 2013 16:43:58 +0000 (18:43 +0200)
Objects/stringobject.c

index 06641423612a002dd2e5fe077f3304e61fbde4a7..78713232ee8b80816cc2b044398d895ebf30c17e 100644 (file)
@@ -3859,8 +3859,7 @@ PyString_Concat(register PyObject **pv, register PyObject *w)
     if (*pv == NULL)
         return;
     if (w == NULL || !PyString_Check(*pv)) {
-        Py_DECREF(*pv);
-        *pv = NULL;
+        Py_CLEAR(*pv);
         return;
     }
     v = string_concat((PyStringObject *) *pv, w);
@@ -4790,12 +4789,9 @@ void
 PyString_Fini(void)
 {
     int i;
-    for (i = 0; i < UCHAR_MAX + 1; i++) {
-        Py_XDECREF(characters[i]);
-        characters[i] = NULL;
-    }
-    Py_XDECREF(nullstring);
-    nullstring = NULL;
+    for (i = 0; i < UCHAR_MAX + 1; i++)
+        Py_CLEAR(characters[i]);
+    Py_CLEAR(nullstring);
 }
 
 void _Py_ReleaseInternedStrings(void)
@@ -4845,6 +4841,5 @@ void _Py_ReleaseInternedStrings(void)
                     "mortal/immortal\n", mortal_size, immortal_size);
     Py_DECREF(keys);
     PyDict_Clear(interned);
-    Py_DECREF(interned);
-    interned = NULL;
+    Py_CLEAR(interned);
 }