File: src/python/pyhbac.c
Function: HbacRequestElement_new
Error: ob_refcnt of new ref from (unknown) sss_python_unicode_from_string is 1 too low
1134 static PyObject *
1135 HbacRequestElement_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
1136 {
1137     HbacRequestElement *self;
1138 
1139     self = (HbacRequestElement *) type->tp_alloc(type, 0);
when call succeeds
1140     if (self == NULL) {
taking False path
1141         PyErr_NoMemory();
1142         return NULL;
1143     }
1144 
1145     self->name = sss_python_unicode_from_string("");
when sss_python_unicode_from_string() succeeds
new ref from (unknown) sss_python_unicode_from_string allocated at:     self->name = sss_python_unicode_from_string("");
ob_refcnt is now refs: 1 + N where N >= 0
new ref from (unknown) sss_python_unicode_from_string is now referenced by 1 non-stack value(s): new ref from call through function pointer.name
1146     if (self->name == NULL) {
taking False path
1147         PyErr_NoMemory();
1148         Py_DECREF(self);
1149         return NULL;
1150     }
1151 
1152     self->groups = PyList_New(0);
when PyList_New() fails
1153     if (self->groups == NULL) {
taking True path
1154         Py_DECREF(self->name);
when taking True path
ob_refcnt is now refs: 0 + N where N >= 0
1155         Py_DECREF(self);
when taking True path
1156         PyErr_NoMemory();
PyErr_NoMemory() returns NULL, raising MemoryError
1157         return NULL;
1158     }
1159 
1160     return (PyObject *) self;
1161 }
ob_refcnt of new ref from (unknown) sss_python_unicode_from_string is 1 too low
was expecting final ob_refcnt to be N + 1 (for some unknown N)
due to object being referenced by: new ref from call through function pointer.name
but final ob_refcnt is N + 0