File: snackmodule.c
Function: widgetCheckboxTreeGetSel
Error: ob_refcnt of PyListObject is 1 too high
1282 static PyObject * widgetCheckboxTreeGetSel(snackWidget * s,
1283 					      PyObject * args) {
1284     void ** selection;
1285     int numselected;
1286     int i;
1287     PyObject * sel;
1288 
1289     if (!PyArg_ParseTuple(args, ""))
1290 	return NULL;
when PyArg_ParseTuple() succeeds
taking False path
1291 
1292     selection = (void **) newtCheckboxTreeGetSelection(s->co, &numselected);
1293 
1294     sel = PyList_New(0);
1295     
when PyList_New() succeeds
PyListObject allocated at:     sel = PyList_New(0);
ob_refcnt is now refs: 1 + N where N >= 0
1296     if (!selection) {
1297 	return sel;
when treating unknown const void * * from snackmodule.c:1293 as non-NULL
taking False path
1298     }
1299 
1300     sel = PyList_New(0);
1301     for (i = 0; i < numselected; i++) {
when PyList_New() succeeds
1302     	PyList_Append(sel, PyInt_FromLong((long) selection[i]));
when taking True path
when taking False path
1303     }
when PyInt_FromLong() succeeds
when PyList_Append() succeeds
1304     free(selection);
1305 
1306     return sel;
1307 }
1308 
ob_refcnt of PyListObject is 1 too high was expecting final ob_refcnt to be N + 0 (for some unknown N) but final ob_refcnt is N + 1 found 3 similar trace(s) to this

File: snackmodule.c
Function: widgetCheckboxTreeGetSel
Error: ob_refcnt of PyIntObject is 1 too high
1282 static PyObject * widgetCheckboxTreeGetSel(snackWidget * s,
1283 					      PyObject * args) {
1284     void ** selection;
1285     int numselected;
1286     int i;
1287     PyObject * sel;
1288 
1289     if (!PyArg_ParseTuple(args, ""))
1290 	return NULL;
when PyArg_ParseTuple() succeeds
taking False path
1291 
1292     selection = (void **) newtCheckboxTreeGetSelection(s->co, &numselected);
1293 
1294     sel = PyList_New(0);
1295     
when PyList_New() succeeds
1296     if (!selection) {
1297 	return sel;
when treating unknown const void * * from snackmodule.c:1293 as non-NULL
taking False path
1298     }
1299 
1300     sel = PyList_New(0);
1301     for (i = 0; i < numselected; i++) {
when PyList_New() succeeds
1302     	PyList_Append(sel, PyInt_FromLong((long) selection[i]));
when taking True path
when taking False path
1303     }
when PyInt_FromLong() succeeds
when PyList_Append() succeeds
PyIntObject allocated at:     	PyList_Append(sel, PyInt_FromLong((long) selection[i]));
ob_refcnt is now refs: 1 + N where N >= 0
ob_refcnt is now refs: 2 + N where N >= 0
PyIntObject is now referenced by 1 non-stack value(s): PyListObject.ob_item[0]
1304     free(selection);
1305 
1306     return sel;
1307 }
1308 
ob_refcnt of PyIntObject is 1 too high was expecting final ob_refcnt to be N + 1 (for some unknown N) due to object being referenced by: PyListObject.ob_item[0] but final ob_refcnt is N + 2 found 3 similar trace(s) to this

File: snackmodule.c
Function: widgetCheckboxTreeGetSel
Error: calling PyList_Append with NULL as argument 1 (sel) at snackmodule.c:1303
1282 static PyObject * widgetCheckboxTreeGetSel(snackWidget * s,
1283 					      PyObject * args) {
1284     void ** selection;
1285     int numselected;
1286     int i;
1287     PyObject * sel;
1288 
1289     if (!PyArg_ParseTuple(args, ""))
1290 	return NULL;
when PyArg_ParseTuple() succeeds
taking False path
1291 
1292     selection = (void **) newtCheckboxTreeGetSelection(s->co, &numselected);
1293 
1294     sel = PyList_New(0);
1295     
when PyList_New() succeeds
1296     if (!selection) {
1297 	return sel;
when treating unknown const void * * from snackmodule.c:1293 as non-NULL
taking False path
1298     }
1299 
1300     sel = PyList_New(0);
1301     for (i = 0; i < numselected; i++) {
when PyList_New() fails
1302     	PyList_Append(sel, PyInt_FromLong((long) selection[i]));
when taking True path
1303     }
when PyInt_FromLong() succeeds
calling PyList_Append with NULL as argument 1 (sel) at snackmodule.c:1303
PyList_Append() invokes Py_TYPE() on the pointer via the PyList_Check() macro, thus accessing (NULL)->ob_type
found 3 similar trace(s) to this
1304     free(selection);
1305 
1306     return sel;
1307 }
1308 

File: snackmodule.c
Function: widgetCheckboxTreeGetSel
Error: ob_refcnt of '*sel' is 1 too high
1282 static PyObject * widgetCheckboxTreeGetSel(snackWidget * s,
1283 					      PyObject * args) {
1284     void ** selection;
1285     int numselected;
1286     int i;
1287     PyObject * sel;
1288 
1289     if (!PyArg_ParseTuple(args, ""))
1290 	return NULL;
when PyArg_ParseTuple() succeeds
taking False path
1291 
1292     selection = (void **) newtCheckboxTreeGetSelection(s->co, &numselected);
1293 
1294     sel = PyList_New(0);
1295     
when PyList_New() succeeds
PyListObject allocated at:     sel = PyList_New(0);
ob_refcnt is now refs: 1 + N where N >= 0
1296     if (!selection) {
1297 	return sel;
when treating unknown const void * * from snackmodule.c:1293 as non-NULL
taking False path
1298     }
1299 
1300     sel = PyList_New(0);
1301     for (i = 0; i < numselected; i++) {
when PyList_New() fails
1302     	PyList_Append(sel, PyInt_FromLong((long) selection[i]));
when taking False path
1303     }
1304     free(selection);
1305 
1306     return sel;
1307 }
1308 
ob_refcnt of '*sel' is 1 too high was expecting final ob_refcnt to be N + 0 (for some unknown N) but final ob_refcnt is N + 1