[python-ldap] Suspected memory leak in Modules/errors.c:LDAPerr
David Malcolm
dmalcolm at redhat.com
Wed Dec 7 22:41:36 CET 2011
I'm running an experimental static analysis tool [1] over python-ldap,
and it discovered what looks like a real reference leak:
Modules/errors.c: In function ‘LDAPerr’,
if it executes this code:
else
PyErr_SetObject(LDAPexception_class,
Py_BuildValue("{s:i}", "errnum", errnum));
then Py_BuildValue returns a new dictionary with refcount 1, owned by
the caller; PyErr_SetObject adds a new ref; the first ref is leaked;
hence the dictionary is leaked every time
HTML version of the above attached.
Having said that, it looks like this branch is only followed when
receiving an unexpected error ID.
Hope this is helpful
Dave
[1] http://gcc-python-plugin.readthedocs.org/en/latest/cpychecker.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ldap/attachments/20111207/ab13ca33/attachment.html>
More information about the python-ldap
mailing list