summaryrefslogtreecommitdiff
path: root/usr.sbin/smtpd/scheduler_ramqueue.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/smtpd/scheduler_ramqueue.c')
-rw-r--r--usr.sbin/smtpd/scheduler_ramqueue.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/usr.sbin/smtpd/scheduler_ramqueue.c b/usr.sbin/smtpd/scheduler_ramqueue.c
index 5ff5312c40f..69b87710a82 100644
--- a/usr.sbin/smtpd/scheduler_ramqueue.c
+++ b/usr.sbin/smtpd/scheduler_ramqueue.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: scheduler_ramqueue.c,v 1.19 2012/08/25 10:23:12 gilles Exp $ */
+/* $OpenBSD: scheduler_ramqueue.c,v 1.20 2012/08/25 15:47:47 eric Exp $ */
/*
* Copyright (c) 2012 Gilles Chehade <gilles@openbsd.org>
@@ -206,7 +206,8 @@ scheduler_ramqueue_rollback(uint32_t msgid)
struct rq_queue *update;
struct rq_envelope *envelope;
- update = tree_xpop(&updates, msgid);
+ if ((update = tree_pop(&updates, msgid)) == NULL)
+ return;
while ((envelope = TAILQ_FIRST(&update->bounce)))
rq_envelope_delete(update, envelope);