The create now throws on relocation, so the whole operation is tried
again. No need to worry about object being relocated.
NSEC3Data* nsec3_data = zone_data_->getNSEC3Data();
if (nsec3_data == NULL) {
nsec3_data = NSEC3Data::create(mem_sgmt_, zone_name_, nsec3_rdata);
- // The create above might have relocated data. So get it again,
- // just to make sure.
- zone_data_ =
- static_cast<ZoneData*>(mem_sgmt_.
- getNamedAddress("updater_zone_data").
- second);
zone_data_->setNSEC3Data(nsec3_data);
zone_data_->setSigned(true);
} else {