diff --git a/lib/dns/qpzone.c b/lib/dns/qpzone.c index 43fabe20e3..26412a5fad 100644 --- a/lib/dns/qpzone.c +++ b/lib/dns/qpzone.c @@ -1411,8 +1411,8 @@ closeversion(dns_db_t *db, dns_dbversion_t **versionp, } else { if (version != qpdb->current_version) { cleanup_version = sweepversion( - qpdb, version, &cleanup_list DNS__DB_FLARG_PASS, - &least_serial); + qpdb, version, &cleanup_list, + &least_serial DNS__DB_FLARG_PASS); } else if (version->serial == qpdb->least_serial) { INSIST(ISC_LIST_EMPTY(version->changed_list)); } @@ -1447,7 +1447,7 @@ closeversion(dns_db_t *db, dns_dbversion_t **versionp, rollback_node(node, serial); } - qpznode_release(qpdb, node DNS__DB_FILELINE, least_serial); + qpznode_release(qpdb, node, least_serial DNS__DB_FILELINE); isc_mem_put(qpdb->common.mctx, changed, sizeof(*changed)); } diff --git a/lib/dns/rdataslab.c b/lib/dns/rdataslab.c index 7ec8348ae2..1af118d280 100644 --- a/lib/dns/rdataslab.c +++ b/lib/dns/rdataslab.c @@ -905,6 +905,8 @@ dns_slabheader_destroy(dns_slabheader_t **headerp) { isc_mem_t *mctx = header->db->mctx; + INSIST(!ISC_LINK_LINKED(header, link)); + dns_db_deletedata(header->db, header->node, header); header->mctx = NULL;