summaryrefslogtreecommitdiff
path: root/usr.sbin
diff options
context:
space:
mode:
authorEric Faurot <eric@cvs.openbsd.org>2011-03-23 20:58:33 +0000
committerEric Faurot <eric@cvs.openbsd.org>2011-03-23 20:58:33 +0000
commit8fc7f60f29b3ff546c5730f67b4d67e6f026adee (patch)
tree67fdaecf2110753bb85483c749ff066c19991ecb /usr.sbin
parent75964e51d2b44c66750efd15d30d465256d5f998 (diff)
The asr structure must always be freed in asr_done(). This is a
left-over from a former implementation where asr_ctx didn't exist and struct asr was refcounted. spotted by Jared Yanovich. ok gilles@
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/smtpd/asr.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/usr.sbin/smtpd/asr.c b/usr.sbin/smtpd/asr.c
index dd524c9bce7..0c069b1dc8a 100644
--- a/usr.sbin/smtpd/asr.c
+++ b/usr.sbin/smtpd/asr.c
@@ -770,8 +770,7 @@ asr_ctx_query(struct asr_ctx *ac, int type)
void
asr_done(struct asr *asr)
{
- if (asr_ctx_unref(asr->a_ctx))
- return;
+ asr_ctx_unref(asr->a_ctx);
if (asr->a_path)
free(asr->a_path);
free(asr);