{
strmap_free(rend_cache, rend_cache_entry_free_);
digestmap_free(rend_cache_v2_dir, rend_cache_entry_free_);
+ strmap_free(rend_cache_service, rend_cache_entry_free_);
strmap_free(rend_cache_failure, rend_cache_failure_entry_free_);
rend_cache = NULL;
rend_cache_v2_dir = NULL;
+ rend_cache_service = NULL;
rend_cache_failure = NULL;
rend_cache_total_allocation = 0;
}
log_warn(LD_REND, "Couldn't compute service ID.");
goto err;
}
- /* We don't care about the introduction points. */
- tor_free(intro_content);
/* Do we already have a newer descriptor? Allow new descriptors with a
rounded timestamp equal to or newer than the current descriptor */
"service ID %s.", safe_str_client(service_id));
goto okay;
}
+ /* We don't care about the introduction points. */
+ tor_free(intro_content);
if (!e) {
e = tor_malloc_zero(sizeof(rend_cache_entry_t));
strmap_set_lc(rend_cache_service, service_id, e);