summaryrefslogtreecommitdiff
path: root/src/feature/hs/hs_metrics.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/feature/hs/hs_metrics.c')
-rw-r--r--src/feature/hs/hs_metrics.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/feature/hs/hs_metrics.c b/src/feature/hs/hs_metrics.c
index 67cae8ec0e..e6d3084f26 100644
--- a/src/feature/hs/hs_metrics.c
+++ b/src/feature/hs/hs_metrics.c
@@ -149,9 +149,11 @@ hs_metrics_service_init(hs_service_t *service)
{
tor_assert(service);
- /* Calling this function twice on a service object is wrong. The caller must
- * free the metrics before if so. */
- if (BUG(service->metrics.store)) {
+ /* This function is called when we register a service and so it could either
+ * be a new service or a service that was just reloaded through a HUP signal
+ * for instance. Thus, it is possible that the service has already an
+ * initialized store. If so, just return. */
+ if (service->metrics.store) {
return;
}