This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author r.david.murray
Recipients r.david.murray, rubenlm, tarek
Date 2010-04-26.01:30:24
SpamBayes Score 1.3877788e-15
Marked as misclassified No
Message-id <1272245426.77.0.988349321449.issue8523@psf.upfronthosting.co.za>
In-reply-to
Content
If solution 1 is acceptable in the general case, then I think a better fix  would look like this:

try:
    names = os.listdir(path)
except os.error, err:
    onerror(os.listdir, path, sys.exc_info())
    return

That is, this is another case in which we can't continue even if onerror returns.  However, onerror is free to correct the problem and then call rmtree.  (The danger, of course, is infinite recursion, but I don't think it is our responsibility to protect the author of an onerror handler from that potential mistake.)

By analogy to the other place rmtree returns after an onerror call, the above fix does fix a real bug, regardless of the disposition of the feature request, since currently if onerror returns we get a name error.
History
Date User Action Args
2010-04-26 01:30:26r.david.murraysetrecipients: + r.david.murray, tarek, rubenlm
2010-04-26 01:30:26r.david.murraysetmessageid: <1272245426.77.0.988349321449.issue8523@psf.upfronthosting.co.za>
2010-04-26 01:30:24r.david.murraylinkissue8523 messages
2010-04-26 01:30:24r.david.murraycreate