service: ensure that trigger timers are always cancelled before free
authorFelix Fietkau <nbd@openwrt.org>
Sun, 25 May 2014 19:12:49 +0000 (21:12 +0200)
committerFelix Fietkau <nbd@openwrt.org>
Sun, 25 May 2014 19:12:49 +0000 (21:12 +0200)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
service/trigger.c

index f450401..6cd94d4 100644 (file)
@@ -90,6 +90,7 @@ static void q_job_run(struct runqueue *q, struct runqueue_task *t)
 
 static void trigger_free(struct trigger *t)
 {
+       uloop_timeout_cancel(&t->delay);
        free(t->data);
        list_del(&t->list);
        free(t);