]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
Fix the subscription_done() call
authorJaroslav Kysela <perex@perex.cz>
Fri, 14 Mar 2014 19:07:38 +0000 (20:07 +0100)
committerJaroslav Kysela <perex@perex.cz>
Fri, 14 Mar 2014 20:05:18 +0000 (21:05 +0100)
The subscription_unsubscribe() must be called from the upper layer (like dvr).

src/main.c
src/subscriptions.c

index 4216fee253d5d70e65e4e5647ef9aea67656e928..c419af2a3b68c73440e3c1cf270e9063ef0d4684 100644 (file)
@@ -854,12 +854,12 @@ main(int argc, char **argv)
 
   tvhftrace("main", epggrab_done);
   tvhftrace("main", tcp_server_done);
-  tvhftrace("main", subscription_done);
   tvhftrace("main", descrambler_done);
   tvhftrace("main", service_mapper_done);
   tvhftrace("main", service_done);
   tvhftrace("main", channel_done);
   tvhftrace("main", dvr_done);
+  tvhftrace("main", subscription_done);
   tvhftrace("main", access_done);
   tvhftrace("main", epg_done);
   tvhftrace("main", avahi_done);
index ebb6e2f369f5edd517734db499168acdab3cfd93..9419308424b99b2e22536d2443e66fc673dfb2e8 100644 (file)
@@ -763,12 +763,7 @@ subscription_init(void)
 void
 subscription_done(void)
 {
-  th_subscription_t *s;
-
-  pthread_mutex_lock(&global_lock);
-  while ((s = LIST_FIRST(&subscriptions)) != NULL)
-    subscription_unsubscribe(s);
-  pthread_mutex_unlock(&global_lock);
+  assert(LIST_FIRST(&subscriptions) == NULL);
 }
 
 /* **************************************************************************