From b6ee3d6b7a3eaf7af09dbe34879a821de997e215 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Fri, 29 Jun 2012 13:43:37 +0300 Subject: #9559: Don't call _pre_mailbox_hook more than once --- Lib/mailbox.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Lib/mailbox.py b/Lib/mailbox.py index 8d3f8b6..73c43e2 100644 --- a/Lib/mailbox.py +++ b/Lib/mailbox.py @@ -740,8 +740,11 @@ class _singlefileMailbox(Mailbox): """Append message to mailbox and return (start, stop) offsets.""" self._file.seek(0, 2) before = self._file.tell() - if len(self._toc) == 0: - # This is the first message + if len(self._toc) == 0 and not self._pending: + # This is the first message, and the _pre_mailbox_hook + # hasn't yet been called. If self._pending is True, + # messages have been removed, so _pre_mailbox_hook must + # have been called already. self._pre_mailbox_hook(self._file) try: self._pre_message_hook(self._file) -- cgit v0.12