From: Jaroslav Kysela Date: Sun, 18 Oct 2015 19:47:00 +0000 (+0200) Subject: subscription: fix the wrong raw service removal X-Git-Tag: v4.2.1~1876 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=00031a84c6a38bb883e8483d9169bff192956c74;p=thirdparty%2Ftvheadend.git subscription: fix the wrong raw service removal --- diff --git a/src/service.c b/src/service.c index 6e39c80f2..9b9f0ee44 100644 --- a/src/service.c +++ b/src/service.c @@ -305,7 +305,7 @@ void service_stop(service_t *t) { elementary_stream_t *st; - + gtimer_disarm(&t->s_receive_timer); t->s_stop_feed(t); diff --git a/src/subscriptions.c b/src/subscriptions.c index 123eeb240..19368c666 100644 --- a/src/subscriptions.c +++ b/src/subscriptions.c @@ -558,11 +558,13 @@ subscription_unsubscribe(th_subscription_t *s, int quiet) service_t *t; char buf[512]; size_t l = 0; + service_t *raw; if (s == NULL) return; t = s->ths_service; + raw = s->ths_raw_service; lock_assert(&global_lock); @@ -574,7 +576,7 @@ subscription_unsubscribe(th_subscription_t *s, int quiet) LIST_SAFE_REMOVE(s, ths_remove_link); #if ENABLE_MPEGTS - if (s->ths_raw_service) + if (raw) LIST_REMOVE(s, ths_mux_link); #endif @@ -600,7 +602,7 @@ subscription_unsubscribe(th_subscription_t *s, int quiet) } #if ENABLE_MPEGTS - if (s->ths_raw_service) + if (raw) service_remove_raw(s->ths_raw_service); #endif