Message50555
The Maildir specification says that messages should be
moved into the "new" directory using link()/unlink(),
not rename(). This isn't for compatibility with
ancient Unixes, but to avoid overwriting an existing
message if the "unique" name turns out not to be unique
after all. (In the current implementation this can
happen if the system clock only has whole-second
resolution and deliveries are being done in
subprocesses, or the clock has been adjusted backwards,
or two machines have the same hostname.) Similarly,
the file in "tmp" should be created O_EXCL. This patch
implements these requirements, falling back to rename()
if link() is unavailable (where on Windows at least,
it's supposed to fail if the destination exists), and
raising ExternalClashError when the link/rename fails
due to the name already being taken in "new".
|
|
| Date |
User |
Action |
Args |
| 2007-08-23 15:53:10 | admin | link | issue1514543 messages |
| 2007-08-23 15:53:10 | admin | create | |
|