]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
Revert "dvb: close dvr device on each re-tune"
authorAdam Sutton <dev@adamsutton.me.uk>
Sat, 2 Feb 2013 11:51:13 +0000 (11:51 +0000)
committerAdam Sutton <dev@adamsutton.me.uk>
Sat, 2 Feb 2013 11:51:13 +0000 (11:51 +0000)
This reverts commit 03e9f1179d67bd2b4ccd7a0f3fd9c5fc039c0d5c.

src/dvb/dvb.h
src/dvb/dvb_adapter.c
src/dvb/dvb_fe.c

index aaccd94600bc1ae077fbdc91361eb1ba0f519e7f..b065467f48c1a14ee1335d71689e7a38d5ab768a 100644 (file)
@@ -346,8 +346,6 @@ void dvb_adapter_start (th_dvb_adapter_t *tda);
 
 void dvb_adapter_stop (th_dvb_adapter_t *tda);
 
-void dvb_adapter_stop_dvr (th_dvb_adapter_t *tda);
-
 void dvb_adapter_set_displayname(th_dvb_adapter_t *tda, const char *s);
 
 void dvb_adapter_set_enabled(th_dvb_adapter_t *tda, int on);
index 07172ea80258dfd69c597553c60036142d8e839c..e4b30c51c3f25e1f170e7580da099effcdaec892 100644 (file)
@@ -714,22 +714,6 @@ dvb_adapter_start ( th_dvb_adapter_t *tda )
   }
 }
 
-void
-dvb_adapter_stop_dvr ( th_dvb_adapter_t *tda )
-{
-  /* Stop DVR thread */
-  if (tda->tda_dvr_pipe.rd != -1) {
-    tvhlog(LOG_DEBUG, "dvb", "%s stopping thread", tda->tda_rootpath);
-    int err = tvh_write(tda->tda_dvr_pipe.wr, "", 1);
-    assert(!err);
-    pthread_join(tda->tda_dvr_thread, NULL);
-    close(tda->tda_dvr_pipe.rd);
-    close(tda->tda_dvr_pipe.wr);
-    tda->tda_dvr_pipe.rd = -1;
-    tvhlog(LOG_DEBUG, "dvb", "%s stopped thread", tda->tda_rootpath);
-  }
-}
-
 void
 dvb_adapter_stop ( th_dvb_adapter_t *tda )
 {
@@ -746,8 +730,18 @@ dvb_adapter_stop ( th_dvb_adapter_t *tda )
     tda->tda_fe_fd = -1;
   }
 
-  dvb_adapter_stop_dvr(tda);
-  
+  /* Stop DVR thread */
+  if (tda->tda_dvr_pipe.rd != -1) {
+    tvhlog(LOG_DEBUG, "dvb", "%s stopping thread", tda->tda_rootpath);
+    int err = tvh_write(tda->tda_dvr_pipe.wr, "", 1);
+    assert(!err);
+    pthread_join(tda->tda_dvr_thread, NULL);
+    close(tda->tda_dvr_pipe.rd);
+    close(tda->tda_dvr_pipe.wr);
+    tda->tda_dvr_pipe.rd = -1;
+    tvhlog(LOG_DEBUG, "dvb", "%s stopped thread", tda->tda_rootpath);
+  }
+
   dvb_adapter_notify(tda);
 }
 
index 779e79b301f5877329f697a58dab19a6c0cd9cc8..73a8cd0a1c1842ccc030a9b7651c91ee4203eceb 100644 (file)
@@ -286,7 +286,6 @@ dvb_fe_stop(th_dvb_mux_instance_t *tdmi, int retune)
   }
 
   dvb_table_flush_all(tdmi);
-  dvb_adapter_stop_dvr(tda);
 
   assert(tdmi->tdmi_scan_queue == NULL);