summaryrefslogtreecommitdiff
path: root/src/resolve
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-08-05 17:02:23 +0200
committerLennart Poettering <lennart@poettering.net>2014-08-05 17:02:46 +0200
commite56187ca4a4841bffdbf3f547d6aa3888d85b1a2 (patch)
tree4e436ddaa32783fc032e4b9005822ae3333c0e79 /src/resolve
parent6e0684729420912df019cc64d3f8a3c8290cc5f1 (diff)
resolved: don't abort if a transaction is aborted because its scope is removed
Diffstat (limited to 'src/resolve')
-rw-r--r--src/resolve/resolved-dns-transaction.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c
index 53d6e18dc5..a2e4f2ce95 100644
--- a/src/resolve/resolved-dns-transaction.c
+++ b/src/resolve/resolved-dns-transaction.c
@@ -147,7 +147,9 @@ void dns_transaction_complete(DnsTransaction *t, DnsTransactionState state) {
assert(t);
assert(!IN_SET(state, DNS_TRANSACTION_NULL, DNS_TRANSACTION_PENDING));
- assert(IN_SET(t->state, DNS_TRANSACTION_NULL, DNS_TRANSACTION_PENDING));
+
+ if (!IN_SET(t->state, DNS_TRANSACTION_NULL, DNS_TRANSACTION_PENDING))
+ return;
/* Note that this call might invalidate the query. Callers
* should hence not attempt to access the query or transaction
@@ -443,7 +445,7 @@ int dns_transaction_go(DnsTransaction *t) {
dns_transaction_stop(t);
- log_debug("Beginning transaction on scope %s on %s/%s",
+ log_debug("Excercising transaction on scope %s on %s/%s",
dns_protocol_to_string(t->scope->protocol),
t->scope->link ? t->scope->link->name : "*",
t->scope->family == AF_UNSPEC ? "*" : af_to_name(t->scope->family));