diff options
| author | Barry Warsaw | 2017-01-28 13:17:25 -0500 |
|---|---|---|
| committer | Barry Warsaw | 2017-01-28 13:19:58 -0500 |
| commit | 7c97e8fbdb90a1a0de1526d7a6f108e95415d6a0 (patch) | |
| tree | d49c10cccf7bfafa08fa7145a5860fa43e5615fb /src/mailman/runners/lmtp.py | |
| parent | dfb807e04037786a62e7635d0b37e0695a77d5d6 (diff) | |
| download | mailman-7c97e8fbdb90a1a0de1526d7a6f108e95415d6a0.tar.gz mailman-7c97e8fbdb90a1a0de1526d7a6f108e95415d6a0.tar.zst mailman-7c97e8fbdb90a1a0de1526d7a6f108e95415d6a0.zip | |
Diffstat (limited to 'src/mailman/runners/lmtp.py')
| -rw-r--r-- | src/mailman/runners/lmtp.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/mailman/runners/lmtp.py b/src/mailman/runners/lmtp.py index b5c7bbb1f..f24107bd7 100644 --- a/src/mailman/runners/lmtp.py +++ b/src/mailman/runners/lmtp.py @@ -40,12 +40,14 @@ import logging from aiosmtpd.controller import Controller from aiosmtpd.lmtp import LMTP +from contextlib import suppress from email.utils import parseaddr from mailman.config import config from mailman.core.runner import Runner from mailman.database.transaction import transactional from mailman.email.message import Message from mailman.interfaces.listmanager import IListManager +from mailman.interfaces.runner import RunnerInterrupt from mailman.utilities.datetime import now from mailman.utilities.email import add_message_hash from public import public @@ -240,7 +242,8 @@ class LMTPRunner(Runner): def run(self): """See `IRunner`.""" - self.lmtp.start() - while not self._stop: - self._snooze(0) - self.lmtp.stop() + with suppress(RunnerInterrupt): + self.lmtp.start() + while not self._stop: + self._snooze(0) + self.lmtp.stop() |
