diff --git a/lib/dns/zone.c b/lib/dns/zone.c index bfa12a2769..88f56eb481 100644 --- a/lib/dns/zone.c +++ b/lib/dns/zone.c @@ -18736,10 +18736,11 @@ zone_rekey(dns_zone_t *zone) { dns_db_closeversion(db, &ver, true); + LOCK_ZONE(zone); + if (commit) { dns_difftuple_t *tuple; - LOCK_ZONE(zone); DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_NEEDNOTIFY); zone_needdump(zone, DNS_DUMP_DELAY); @@ -18870,10 +18871,8 @@ zone_rekey(dns_zone_t *zone) { * Schedule the next resigning event */ set_resigntime(zone); - UNLOCK_ZONE(zone); } - LOCK_ZONE(zone); isc_time_settoepoch(&zone->refreshkeytime); /*