Skip to content

Commit d30effd

Browse files
committed
Python builtin closure minor tweaks
1 parent 631e26a commit d30effd

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

Lib/python/builtin.swg

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ SwigPyBuiltin_SetterClosure (PyObject *obj, PyObject *val, void *closure) {
8989
}
9090
tuple = PyTuple_New(1);
9191
assert(tuple);
92+
Py_INCREF(val);
9293
PyTuple_SET_ITEM(tuple, 0, val);
93-
Py_XINCREF(val);
9494
result = (*getset->set)(obj, tuple);
9595
Py_DECREF(tuple);
9696
Py_XDECREF(result);
@@ -385,8 +385,8 @@ SwigPyBuiltin_InitBases (PyTypeObject *type, PyTypeObject **bases) {
385385
++base_count;
386386
tuple = PyTuple_New(base_count);
387387
for (i = 0; i < base_count; ++i) {
388-
PyTuple_SET_ITEM(tuple, i, (PyObject *)bases[i]);
389388
Py_INCREF((PyObject *)bases[i]);
389+
PyTuple_SET_ITEM(tuple, i, (PyObject *)bases[i]);
390390
}
391391
type->tp_bases = tuple;
392392
}
@@ -489,8 +489,8 @@ SwigPyBuiltin_binaryfunc_closure(SwigPyWrapperFunction wrapper, PyObject *a, PyO
489489
PyObject *tuple, *result;
490490
tuple = PyTuple_New(1);
491491
assert(tuple);
492+
Py_INCREF(b);
492493
PyTuple_SET_ITEM(tuple, 0, b);
493-
Py_XINCREF(b);
494494
result = wrapper(a, tuple);
495495
Py_DECREF(tuple);
496496
return result;
@@ -508,10 +508,10 @@ SwigPyBuiltin_ternaryfunc_closure(SwigPyWrapperFunction wrapper, PyObject *a, Py
508508
PyObject *tuple, *result;
509509
tuple = PyTuple_New(2);
510510
assert(tuple);
511+
Py_INCREF(b);
511512
PyTuple_SET_ITEM(tuple, 0, b);
513+
Py_INCREF(c);
512514
PyTuple_SET_ITEM(tuple, 1, c);
513-
Py_XINCREF(b);
514-
Py_XINCREF(c);
515515
result = wrapper(a, tuple);
516516
Py_DECREF(tuple);
517517
return result;
@@ -574,8 +574,8 @@ SwigPyBuiltin_ssizessizeobjargproc_closure(SwigPyWrapperFunction wrapper, PyObje
574574
PyTuple_SET_ITEM(tuple, 0, _PyLong_FromSsize_t(b));
575575
PyTuple_SET_ITEM(tuple, 1, _PyLong_FromSsize_t(c));
576576
if (d) {
577-
PyTuple_SET_ITEM(tuple, 2, d);
578577
Py_INCREF(d);
578+
PyTuple_SET_ITEM(tuple, 2, d);
579579
}
580580
resultobj = wrapper(a, tuple);
581581
result = resultobj ? 0 : -1;
@@ -626,8 +626,8 @@ SwigPyBuiltin_ssizeobjargproc_closure(SwigPyWrapperFunction wrapper, PyObject *a
626626
tuple = PyTuple_New(2);
627627
assert(tuple);
628628
PyTuple_SET_ITEM(tuple, 0, _PyLong_FromSsize_t(b));
629+
Py_INCREF(c);
629630
PyTuple_SET_ITEM(tuple, 1, c);
630-
Py_XINCREF(c);
631631
resultobj = wrapper(a, tuple);
632632
result = resultobj ? 0 : -1;
633633
Py_XDECREF(resultobj);
@@ -647,8 +647,8 @@ SwigPyBuiltin_objobjproc_closure(SwigPyWrapperFunction wrapper, PyObject *a, PyO
647647
PyObject *tuple;
648648
tuple = PyTuple_New(1);
649649
assert(tuple);
650+
Py_INCREF(b);
650651
PyTuple_SET_ITEM(tuple, 0, b);
651-
Py_XINCREF(b);
652652
pyresult = wrapper(a, tuple);
653653
result = pyresult ? (PyObject_IsTrue(pyresult) ? 1 : 0) : -1;
654654
Py_XDECREF(pyresult);
@@ -682,11 +682,11 @@ SwigPyBuiltin_objobjargproc_closure(SwigPyWrapperFunction wrapper, PyObject *a,
682682
int result;
683683
tuple = PyTuple_New(c ? 2 : 1);
684684
assert(tuple);
685+
Py_INCREF(b);
685686
PyTuple_SET_ITEM(tuple, 0, b);
686-
Py_XINCREF(b);
687687
if (c) {
688+
Py_INCREF(c);
688689
PyTuple_SET_ITEM(tuple, 1, c);
689-
Py_XINCREF(c);
690690
}
691691
resultobj = wrapper(a, tuple);
692692
result = resultobj ? 0 : -1;

0 commit comments

Comments
 (0)