diff --git a/src/knot/server/zones.c b/src/knot/server/zones.c index 6c6d1ee19642f21a6c398ee53518a1fa9d8569be..460819617390e01183084994564eca523911bf76 100644 --- a/src/knot/server/zones.c +++ b/src/knot/server/zones.c @@ -374,7 +374,7 @@ static int zones_zonefile_sync_from_ev(knot_zone_t *zone, zonedata_t *zd) } /*! - * \brief Sync chagnes in zone to zonefile. + * \brief Sync changes in zone to zonefile. */ int zones_flush_ev(event_t *e) { @@ -1251,11 +1251,14 @@ static int zones_process_update_auth(knot_zone_t *zone, if (ret != KNOT_EOK) { log_zone_error("%s: Failed to sign incoming update %s\n", msg, knot_strerror(ret)); + new_contents->zone = zone; zones_store_changesets_rollback(transaction); zones_free_merged_changesets(chgsets, sec_chs); + free(fake_zone); return ret; } assert(dnssec_contents); + dnssec_contents->zone = zone; // Plan zone resign if needed zonedata_t *zd = (zonedata_t *)zone->data; @@ -1264,8 +1267,10 @@ static int zones_process_update_auth(knot_zone_t *zone, if (ret != KNOT_EOK) { log_zone_error("%s: Failed to replan zone sign %s\n", msg, knot_strerror(ret)); + new_contents->zone = zone; zones_store_changesets_rollback(transaction); zones_free_merged_changesets(chgsets, sec_chs); + free(fake_zone); return ret; } }