New submission from David Watson <bai...@users.sourceforge.net>: When investigating issue #4859 I found that when pwd.getpwall() and grp.getgrall() fail due to decoding errors, they leave open file descriptors referring to the passwd and group files, since they don't call the end*ent() functions in this case. Also, the grp.* functions have a reference counting error when they fail in this way - a debug build reports that an object's reference count goes to -1. What I think happens is that in mkgrent(), PyStructSequence_SET_ITEM steals the reference to "w", meaning that the "Py_DECREF(w)" call shouldn't be made afterwards. The attached diff fixes both of these problems, I think, and applies to the 2.x and 3.x branches.
---------- components: Extension Modules files: minor.diff keywords: patch messages: 79378 nosy: baikie severity: normal status: open title: Refcount error and file descriptor leaks in pwd, grp modules type: resource usage Added file: http://bugs.python.org/file12639/minor.diff _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue4873> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com