@cryptotaxi247 / netdata-1 / commits / e73ccf9a2

fix rrdcalc_unlink_from_rrdset() (#19956)

Costa Tsaousis committed Mar 24, 2025 at 20:57 UTC e73ccf9a2c22b130305fb8d3289390725e0608c5
1 file changed +4 -2
src/health/rrdcalc.c
+4 -2
@@ -249,13 +249,13 @@ static void rrdcalc_link_to_rrdset(RRDCALC *rc) {
249
250 static void rrdcalc_unlink_from_rrdset(RRDCALC *rc, bool having_ll_wrlock) {
251 RRDSET *st = rc->rrdset;
252 + if(!st) return;
253
254 if (!exit_initiated_get()) {
254 - RRDHOST *host = st->rrdhost;
255 -
255 time_t now = now_realtime_sec();
256
257 if (likely(rc->status != RRDCALC_STATUS_REMOVED)) {
258 + RRDHOST *host = st->rrdhost;
259 ALARM_ENTRY *ae = health_create_alarm_entry(
260 host,
261 rc,
@@ -279,6 +279,8 @@ static void rrdcalc_unlink_from_rrdset(RRDCALC *rc, bool having_ll_wrlock) {
279 if(rc->prev)
280 DOUBLE_LINKED_LIST_REMOVE_ITEM_UNSAFE(st->alerts.base, rc, prev, next);
281
282 + rc->rrdset = NULL;
283 +
284 if(!having_ll_wrlock)
285 rw_spinlock_write_unlock(&st->alerts.spinlock);
286 }