]> granicus.if.org Git - python/commit
Remove file-locking in MH.pack() method.
authorAndrew M. Kuchling <amk@amk.ca>
Fri, 17 Nov 2006 13:30:25 +0000 (13:30 +0000)
committerAndrew M. Kuchling <amk@amk.ca>
Fri, 17 Nov 2006 13:30:25 +0000 (13:30 +0000)
commit8c456f3b5705f9b4dc8f822f92185570c1ce94bb
tree7bd3f8cd29c8ee77550fef80d215066df8a387ca
parent25aabf4cbb7ff8d1a38f8ef4602a409c00474a30
Remove file-locking in MH.pack() method.
This change looks massive but it's mostly a re-indenting after
removing some try...finally blocks.

Also adds a test case that does a pack() while the mailbox is locked; this
test would have turned up bugs in the original code on some platforms.

In both nmh and GNU Mailutils' implementation of MH-format mailboxes,
no locking is done of individual message files when renaming them.

The original mailbox.py code did do locking, which meant that message
files had to be opened.  This code was buggy on certain platforms
(found through reading the code); there were code paths that closed
the file object and then called _unlock_file() on it.

Will backport to 25-maint once I see how the buildbots react to this patch.
Lib/mailbox.py
Lib/test/test_mailbox.py