diff options
-rw-r--r-- | usr.sbin/smtpd/mta.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/usr.sbin/smtpd/mta.c b/usr.sbin/smtpd/mta.c index 14689b42c4e..825afa1fcd8 100644 --- a/usr.sbin/smtpd/mta.c +++ b/usr.sbin/smtpd/mta.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mta.c,v 1.158 2013/06/03 16:04:03 eric Exp $ */ +/* $OpenBSD: mta.c,v 1.159 2013/06/04 08:16:10 eric Exp $ */ /* * Copyright (c) 2008 Pierre-Yves Ritschard <pyr@openbsd.org> @@ -1255,6 +1255,9 @@ mta_relay_unref(struct mta_relay *relay) log_debug("debug: mta: freeing %s", mta_relay_to_text(relay)); SPLAY_REMOVE(mta_relay_tree, &relays, relay); + while ((tree_poproot(&relay->connectors, NULL, (void**)&c))) + mta_connector_free(c); + free(relay->authlabel); free(relay->authtable); free(relay->backupname); @@ -1263,9 +1266,6 @@ mta_relay_unref(struct mta_relay *relay) free(relay->secret); free(relay->sourcetable); - while ((tree_poproot(&relay->connectors, NULL, (void**)&c))) - mta_connector_free(c); - if (evtimer_pending(&relay->ev, NULL)) evtimer_del(&relay->ev); |