Message79378
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. |
|
| Date |
User |
Action |
Args |
| 2009-01-07 22:30:49 | baikie | set | recipients:
+ baikie |
| 2009-01-07 22:30:46 | baikie | set | messageid: <[email protected]> |
| 2009-01-07 22:30:45 | baikie | link | issue4873 messages |
| 2009-01-07 22:30:40 | baikie | create | |
|