diff -r 23a760bdd4b1 Mac/Modules/carbonevt/_CarbonEvtmodule.c --- a/Mac/Modules/carbonevt/_CarbonEvtmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Mac/Modules/carbonevt/_CarbonEvtmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -1051,8 +1051,7 @@ _err = RemoveEventHandler(_self->ob_itself); if (_err != noErr) return PyMac_Error(_err); _self->ob_itself = NULL; - Py_DECREF(_self->ob_callback); - _self->ob_callback = NULL; + Py_CLEAR(_self->ob_callback); Py_INCREF(Py_None); _res = Py_None; return _res; diff -r 23a760bdd4b1 Mac/Modules/list/_Listmodule.c --- a/Mac/Modules/list/_Listmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Mac/Modules/list/_Listmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -76,8 +76,7 @@ static void ListObj_dealloc(ListObject *self) { - Py_XDECREF(self->ob_ldef_func); - self->ob_ldef_func = NULL; + Py_CLEAR(self->ob_ldef_func); SetListRefCon(self->ob_itself, (long)0); if (self->ob_must_be_disposed && self->ob_itself) LDispose(self->ob_itself); self->ob_type->tp_free((PyObject *)self); diff -r 23a760bdd4b1 Modules/_bsddb.c --- a/Modules/_bsddb.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/_bsddb.c Fri Jan 17 22:42:51 2014 +0200 @@ -949,8 +949,7 @@ * DBTxns and closing any open DBs first. */ if (makeDBError(err)) { if (self->myenvobj) { - Py_DECREF(self->myenvobj); - self->myenvobj = NULL; + Py_CLEAR(self->myenvobj); } Py_DECREF(self); self = NULL; @@ -982,20 +981,16 @@ PyObject_ClearWeakRefs((PyObject *) self); } if (self->myenvobj) { - Py_DECREF(self->myenvobj); - self->myenvobj = NULL; + Py_CLEAR(self->myenvobj); } if (self->associateCallback != NULL) { - Py_DECREF(self->associateCallback); - self->associateCallback = NULL; + Py_CLEAR(self->associateCallback); } if (self->btCompareCallback != NULL) { - Py_DECREF(self->btCompareCallback); - self->btCompareCallback = NULL; + Py_CLEAR(self->btCompareCallback); } if (self->dupCompareCallback != NULL) { - Py_DECREF(self->dupCompareCallback); - self->dupCompareCallback = NULL; + Py_CLEAR(self->dupCompareCallback); } Py_DECREF(self->private_obj); PyObject_Del(self); @@ -1160,8 +1155,7 @@ PyErr_Clear(); } - Py_XDECREF(self->event_notifyCallback); - self->event_notifyCallback = NULL; + Py_CLEAR(self->event_notifyCallback); if (self->in_weakreflist != NULL) { PyObject_ClearWeakRefs((PyObject *) self); @@ -1640,8 +1634,7 @@ MYDB_END_ALLOW_THREADS; if (err) { - Py_XDECREF(secondaryDB->associateCallback); - secondaryDB->associateCallback = NULL; + Py_CLEAR(secondaryDB->associateCallback); secondaryDB->primaryDBType = 0; } diff -r 23a760bdd4b1 Modules/_ctypes/_ctypes.c --- a/Modules/_ctypes/_ctypes.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/_ctypes/_ctypes.c Fri Jan 17 22:42:51 2014 +0200 @@ -194,10 +194,8 @@ if (-1 == PyDict_DelItem(self->dict, self->key)) /* XXX Error context */ PyErr_WriteUnraisable(Py_None); - Py_DECREF(self->key); - self->key = NULL; - Py_DECREF(self->dict); - self->dict = NULL; + Py_CLEAR(self->key); + Py_CLEAR(self->dict); } Py_INCREF(Py_None); return Py_None; @@ -3040,10 +3038,8 @@ PyCFuncPtr_set_restype(PyCFuncPtrObject *self, PyObject *ob) { if (ob == NULL) { - Py_XDECREF(self->restype); - self->restype = NULL; - Py_XDECREF(self->checker); - self->checker = NULL; + Py_CLEAR(self->restype); + Py_CLEAR(self->checker); return 0; } if (ob != Py_None && !PyType_stgdict(ob) && !PyCallable_Check(ob)) { @@ -3086,10 +3082,8 @@ PyObject *converters; if (ob == NULL || ob == Py_None) { - Py_XDECREF(self->converters); - self->converters = NULL; - Py_XDECREF(self->argtypes); - self->argtypes = NULL; + Py_CLEAR(self->converters); + Py_CLEAR(self->argtypes); } else { converters = converters_from_argtypes(ob); if (!converters) diff -r 23a760bdd4b1 Modules/_elementtree.c --- a/Modules/_elementtree.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/_elementtree.c Fri Jan 17 22:42:51 2014 +0200 @@ -2739,10 +2739,10 @@ target->events = events; /* clear out existing events */ - Py_XDECREF(target->start_event_obj); target->start_event_obj = NULL; - Py_XDECREF(target->end_event_obj); target->end_event_obj = NULL; - Py_XDECREF(target->start_ns_event_obj); target->start_ns_event_obj = NULL; - Py_XDECREF(target->end_ns_event_obj); target->end_ns_event_obj = NULL; + Py_CLEAR(target->start_event_obj); + Py_CLEAR(target->end_event_obj); + Py_CLEAR(target->start_ns_event_obj); + Py_CLEAR(target->end_ns_event_obj); if (event_set == Py_None) { /* default is "end" only */ diff -r 23a760bdd4b1 Modules/_sqlite/connection.c --- a/Modules/_sqlite/connection.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/_sqlite/connection.c Fri Jan 17 22:42:51 2014 +0200 @@ -369,8 +369,7 @@ if (self->apsw_connection) { ret = PyObject_CallMethod(self->apsw_connection, "close", ""); Py_XDECREF(ret); - Py_XDECREF(self->apsw_connection); - self->apsw_connection = NULL; + Py_CLEAR(self->apsw_connection); self->db = NULL; } else { Py_BEGIN_ALLOW_THREADS diff -r 23a760bdd4b1 Modules/_sqlite/cursor.c --- a/Modules/_sqlite/cursor.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/_sqlite/cursor.c Fri Jan 17 22:42:51 2014 +0200 @@ -231,8 +231,7 @@ if (converter != Py_None) { Py_DECREF(converter); } - Py_XDECREF(self->row_cast_map); - self->row_cast_map = NULL; + Py_CLEAR(self->row_cast_map); return -1; } @@ -468,8 +467,7 @@ allow_8bit_chars = ((self->connection->text_factory != (PyObject*)&PyUnicode_Type) && (self->connection->text_factory != pysqlite_OptimizedUnicode)); - Py_XDECREF(self->next_row); - self->next_row = NULL; + Py_CLEAR(self->next_row); if (multiple) { /* executemany() */ @@ -896,8 +894,7 @@ if (!self->next_row) { if (self->statement) { (void)pysqlite_statement_reset(self->statement); - Py_DECREF(self->statement); - self->statement = NULL; + Py_CLEAR(self->statement); } return NULL; } diff -r 23a760bdd4b1 Modules/cPickle.c --- a/Modules/cPickle.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/cPickle.c Fri Jan 17 22:42:51 2014 +0200 @@ -324,8 +324,7 @@ #define FREE_ARG_TUP(self) { \ if (Py_REFCNT(self->arg) > 1) { \ - Py_DECREF(self->arg); \ - self->arg=NULL; \ + Py_CLEAR(self->arg); \ } \ } diff -r 23a760bdd4b1 Modules/cdmodule.c --- a/Modules/cdmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/cdmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -535,10 +535,8 @@ /* no sense in keeping the callbacks, so remove them */ for (i = 0; i < NCALLBACKS; i++) { - Py_XDECREF(self->ob_cdcallbacks[i].ob_cdcallback); - self->ob_cdcallbacks[i].ob_cdcallback = NULL; - Py_XDECREF(self->ob_cdcallbacks[i].ob_cdcallbackarg); - self->ob_cdcallbacks[i].ob_cdcallbackarg = NULL; + Py_CLEAR(self->ob_cdcallbacks[i].ob_cdcallback); + Py_CLEAR(self->ob_cdcallbacks[i].ob_cdcallbackarg); } Py_INCREF(Py_None); @@ -588,11 +586,9 @@ CDremovecallback(self->ob_cdparser, (CDDATATYPES) type); - Py_XDECREF(self->ob_cdcallbacks[type].ob_cdcallback); - self->ob_cdcallbacks[type].ob_cdcallback = NULL; + Py_CLEAR(self->ob_cdcallbacks[type].ob_cdcallback); - Py_XDECREF(self->ob_cdcallbacks[type].ob_cdcallbackarg); - self->ob_cdcallbacks[type].ob_cdcallbackarg = NULL; + Py_CLEAR(self->ob_cdcallbacks[type].ob_cdcallbackarg); Py_INCREF(Py_None); return Py_None; @@ -668,10 +664,8 @@ int i; for (i = 0; i < NCALLBACKS; i++) { - Py_XDECREF(self->ob_cdcallbacks[i].ob_cdcallback); - self->ob_cdcallbacks[i].ob_cdcallback = NULL; - Py_XDECREF(self->ob_cdcallbacks[i].ob_cdcallbackarg); - self->ob_cdcallbacks[i].ob_cdcallbackarg = NULL; + Py_CLEAR(self->ob_cdcallbacks[i].ob_cdcallback); + Py_CLEAR(self->ob_cdcallbacks[i].ob_cdcallbackarg); } CDdeleteparser(self->ob_cdparser); PyObject_Del(self); diff -r 23a760bdd4b1 Modules/flmodule.c --- a/Modules/flmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/flmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -97,10 +97,8 @@ { int i, n; - Py_XDECREF(g->ob_callback); - g->ob_callback = NULL; - Py_XDECREF(g->ob_callback_arg); - g->ob_callback_arg = NULL; + Py_CLEAR(g->ob_callback); + Py_CLEAR(g->ob_callback_arg); if (allgenerics == NULL) return; /* No objects known yet */ n = PyList_Size(allgenerics); @@ -132,10 +130,8 @@ /* The object is now unreachable for do_forms and check_forms, so delete it from the list of known objects */ - Py_XDECREF(g->ob_callback); - g->ob_callback = NULL; - Py_XDECREF(g->ob_callback_arg); - g->ob_callback_arg = NULL; + Py_CLEAR(g->ob_callback); + Py_CLEAR(g->ob_callback_arg); PyList_SetItem(allgenerics, i, (PyObject *)NULL); nfreeslots++; } diff -r 23a760bdd4b1 Modules/readline.c --- a/Modules/readline.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/readline.c Fri Jan 17 22:42:51 2014 +0200 @@ -206,8 +206,7 @@ if (!PyArg_ParseTuple(args, buf, &function)) return NULL; if (function == Py_None) { - Py_XDECREF(*hook_var); - *hook_var = NULL; + Py_CLEAR(*hook_var); } else if (PyCallable_Check(function)) { PyObject *tmp = *hook_var; diff -r 23a760bdd4b1 Modules/selectmodule.c --- a/Modules/selectmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/selectmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -71,8 +71,7 @@ { int i; for (i = 0; i < FD_SETSIZE + 1 && fd2obj[i].sentinel >= 0; i++) { - Py_XDECREF(fd2obj[i].obj); - fd2obj[i].obj = NULL; + Py_CLEAR(fd2obj[i].obj); } fd2obj[0].sentinel = -1; } diff -r 23a760bdd4b1 Modules/svmodule.c --- a/Modules/svmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Modules/svmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -279,8 +279,7 @@ (void)svUnlockCaptureData(self->ob_svideo->ob_svideo, self->ob_capture); self->ob_capture = NULL; - Py_DECREF(self->ob_svideo); - self->ob_svideo = NULL; + Py_CLEAR(self->ob_svideo); } PyObject_Del(self); } diff -r 23a760bdd4b1 Objects/tupleobject.c --- a/Objects/tupleobject.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Objects/tupleobject.c Fri Jan 17 22:42:51 2014 +0200 @@ -881,8 +881,7 @@ _Py_ForgetReference((PyObject *) v); /* DECREF items deleted by shrinkage */ for (i = newsize; i < oldsize; i++) { - Py_XDECREF(v->ob_item[i]); - v->ob_item[i] = NULL; + Py_CLEAR(v->ob_item[i]); } sv = PyObject_GC_Resize(PyTupleObject, v, newsize); if (sv == NULL) { @@ -928,8 +927,7 @@ #if PyTuple_MAXSAVESIZE > 0 /* empty tuples are used all over the place and applications may * rely on the fact that an empty tuple is a singleton. */ - Py_XDECREF(free_list[0]); - free_list[0] = NULL; + Py_CLEAR(free_list[0]); (void)PyTuple_ClearFreeList(); #endif diff -r 23a760bdd4b1 Objects/unicodeobject.c --- a/Objects/unicodeobject.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Objects/unicodeobject.c Fri Jan 17 22:42:51 2014 +0200 @@ -3520,8 +3520,7 @@ goto onError; return; onError: - Py_DECREF(*exceptionObject); - *exceptionObject = NULL; + Py_CLEAR(*exceptionObject); } } @@ -4826,8 +4825,7 @@ goto onError; return; onError: - Py_DECREF(*exceptionObject); - *exceptionObject = NULL; + Py_CLEAR(*exceptionObject); } } diff -r 23a760bdd4b1 Python/ceval.c --- a/Python/ceval.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Python/ceval.c Fri Jan 17 22:42:51 2014 +0200 @@ -3240,8 +3240,7 @@ if (co->co_flags & CO_GENERATOR) { /* Don't need to keep the reference to f_back, it will be set * when the generator is resumed. */ - Py_XDECREF(f->f_back); - f->f_back = NULL; + Py_CLEAR(f->f_back); PCALL(PCALL_GENERATOR); diff -r 23a760bdd4b1 Python/sysmodule.c --- a/Python/sysmodule.c Fri Jan 17 09:29:24 2014 -0600 +++ b/Python/sysmodule.c Fri Jan 17 22:42:51 2014 +0200 @@ -367,8 +367,7 @@ result = call_trampoline(tstate, callback, frame, what, arg); if (result == NULL) { PyEval_SetTrace(NULL, NULL); - Py_XDECREF(frame->f_trace); - frame->f_trace = NULL; + Py_CLEAR(frame->f_trace); return -1; } if (result != Py_None) {