517 static void
518 PyShmMemory_dealloc(
519 PyShmObj *self)
520 {
521 /* del shm_dict[key], ignore if it fails */
522 if (PyDict_DelItem(shm_dict, PyInt_FromLong(self->shmid)) == -1)
when PyInt_FromLong() succeeds
when considering range: -0x80000000 <= value <= -2
taking False path
PyIntObject allocated at: if (PyDict_DelItem(shm_dict, PyInt_FromLong(self->shmid)) == -1)
ob_refcnt is now refs: 1 + N where N >= 0
523 PyErr_Clear();
524 /* all references in the current process to the shared
525 memory segment are lost, so if attached, detach it.
526 XXX: This is not true when Python is embedded.
527
528 if (self->addr != NULL) {
529 shmdt(self->addr);
530 }
531 */
532 PyObject_DEL(self);
533 }
returning
ob_refcnt of PyIntObject 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 2 similar trace(s) to this