Skip to content

Commit 7f8ed28

Browse files
authored
use Py_CLEAR to be on the safe side
1 parent 8297c8a commit 7f8ed28

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

Modules/_elementtree.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -816,14 +816,14 @@ _elementtree_Element___deepcopy___impl(ElementObject *self, PyObject *memo)
816816
elementtreestate *st = get_elementtree_state_by_type(tp);
817817
tmp = Py_NewRef(self->tag);
818818
tag = deepcopy(st, tmp, memo);
819-
Py_DECREF(tmp);
819+
Py_CLEAR(tmp);
820820
if (!tag)
821821
return NULL;
822822

823823
if (self->extra && self->extra->attrib) {
824824
tmp = Py_NewRef(self->extra->attrib);
825825
attrib = deepcopy(st, tmp, memo);
826-
Py_DECREF(tmp);
826+
Py_CLEAR(tmp);
827827
if (!attrib) {
828828
Py_DECREF(tag);
829829
return NULL;
@@ -842,14 +842,14 @@ _elementtree_Element___deepcopy___impl(ElementObject *self, PyObject *memo)
842842

843843
tmp = Py_NewRef(JOIN_OBJ(self->text));
844844
text = deepcopy(st, tmp, memo);
845-
Py_DECREF(tmp);
845+
Py_CLEAR(tmp);
846846
if (!text)
847847
goto error;
848848
_set_joined_ptr(&element->text, JOIN_SET(text, JOIN_GET(self->text)));
849849

850850
tmp = Py_NewRef(JOIN_OBJ(self->tail));
851851
tail = deepcopy(st, tmp, memo);
852-
Py_DECREF(tmp);
852+
Py_CLEAR(tmp);
853853
if (!tail)
854854
goto error;
855855
_set_joined_ptr(&element->tail, JOIN_SET(tail, JOIN_GET(self->tail)));
@@ -862,7 +862,7 @@ _elementtree_Element___deepcopy___impl(ElementObject *self, PyObject *memo)
862862
for (i = 0; self->extra && i < self->extra->length; i++) {
863863
tmp = Py_NewRef(self->extra->children[i]);
864864
PyObject* child = deepcopy(st, tmp, memo);
865-
Py_DECREF(tmp);
865+
Py_CLEAR(tmp);
866866
if (!child || !Element_Check(st, child)) {
867867
if (child) {
868868
raise_type_error(child);

0 commit comments

Comments
 (0)