diff options
| author | bwarsaw | 2002-04-01 16:46:17 +0000 |
|---|---|---|
| committer | bwarsaw | 2002-04-01 16:46:17 +0000 |
| commit | 06a6e9830e11ae0ba94eda113f347411f0110ea0 (patch) | |
| tree | 767f92a7e771bf53ab2dc7dd336405c3f23f30ed /Mailman/Queue/BounceRunner.py | |
| parent | 469f621d8014b73fd05c14951a3552f8260be668 (diff) | |
| download | mailman-06a6e9830e11ae0ba94eda113f347411f0110ea0.tar.gz mailman-06a6e9830e11ae0ba94eda113f347411f0110ea0.tar.zst mailman-06a6e9830e11ae0ba94eda113f347411f0110ea0.zip | |
Diffstat (limited to 'Mailman/Queue/BounceRunner.py')
| -rw-r--r-- | Mailman/Queue/BounceRunner.py | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/Mailman/Queue/BounceRunner.py b/Mailman/Queue/BounceRunner.py index 341ef9e50..a2131fc42 100644 --- a/Mailman/Queue/BounceRunner.py +++ b/Mailman/Queue/BounceRunner.py @@ -94,22 +94,24 @@ class BounceRunner(Runner): if mlist.internal_name() == mm_cfg.MAILMAN_SITE_LIST: for listname in Utils.list_names(): xlist = self._open_list(listname) - if xlist.isMember(addr): - unlockp = 0 - if not xlist.Locked(): + xlist.Load() + for addr in addrs: + if xlist.isMember(addr): + unlockp = 0 + if not xlist.Locked(): + try: + xlist.Lock(timeout=mm_cfg.LIST_LOCK_TIMEOUT) + except LockFile.TimeOutError: + # Oh well, forget aboutf this list + continue + unlockp = 1 try: - xlist.Lock(timeout=mm_cfg.LIST_LOCK_TIMEOUT) - except LockFile.TimeOutError: - # Oh well, forget aboutf this list - continue - unlockp = 1 - try: - xlist.registerBounce(addr, msg) - found = 1 - xlist.Save() - finally: - if unlockp: - xlist.Unlock() + xlist.registerBounce(addr, msg) + found = 1 + xlist.Save() + finally: + if unlockp: + xlist.Unlock() else: try: mlist.Lock(timeout=mm_cfg.LIST_LOCK_TIMEOUT) |
