mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-31 06:25:31 +00:00
Make sure catz->catzs isn't destroyed before catz
Call dns_catz_unref_catzs() only after detaching 'catz'.
This commit is contained in:
@@ -844,14 +844,16 @@ dns__catz_timer_start(dns_catz_zone_t *catz) {
|
|||||||
static void
|
static void
|
||||||
dns__catz_timer_stop(void *arg) {
|
dns__catz_timer_stop(void *arg) {
|
||||||
dns_catz_zone_t *catz = arg;
|
dns_catz_zone_t *catz = arg;
|
||||||
|
dns_catz_zones_t *catzs = NULL;
|
||||||
REQUIRE(DNS_CATZ_ZONE_VALID(catz));
|
REQUIRE(DNS_CATZ_ZONE_VALID(catz));
|
||||||
|
|
||||||
isc_timer_stop(catz->updatetimer);
|
isc_timer_stop(catz->updatetimer);
|
||||||
isc_timer_destroy(&catz->updatetimer);
|
isc_timer_destroy(&catz->updatetimer);
|
||||||
catz->loop = NULL;
|
catz->loop = NULL;
|
||||||
|
catzs = catz->catzs;
|
||||||
|
|
||||||
dns_catz_unref_catzs(catz->catzs);
|
|
||||||
dns_catz_detach_catz(&catz);
|
dns_catz_detach_catz(&catz);
|
||||||
|
dns_catz_unref_catzs(catzs);
|
||||||
}
|
}
|
||||||
|
|
||||||
isc_result_t
|
isc_result_t
|
||||||
|
Reference in New Issue
Block a user