fix typo
[enigma2.git] / lib / service / servicedvb.cpp
index 977399697396d438a699ff60c21dadd8b8070142..4942324b58d034727e31eded3fbddab95695a8d6 100644 (file)
@@ -1740,16 +1740,6 @@ void eDVBServicePlay::updateDecoder()
                m_teletext_parser = new eDVBTeletextParser(m_decode_demux);
                m_teletext_parser->connectNewPage(slot(*this, &eDVBServicePlay::newSubtitlePage), m_new_subtitle_page_connection);
 #endif
-               if (apid != 1)
-               {
-                       ePtr<iDVBDemux> data_demux;
-                       if ( (m_timeshift_active && !m_service_handler_timeshift.getDataDemux(data_demux))
-                               || (!m_timeshift_active && !m_service_handler.getDataDemux(data_demux)))
-                       {
-                               m_radiotext_parser = new eDVBRadioTextParser(data_demux);
-                               m_radiotext_parser->connectUpdatedRadiotext(slot(*this, &eDVBServicePlay::radioTextUpdated), m_radiotext_updated_connection);
-                       }
-               }
        }
 
        if (m_decoder)
@@ -1792,7 +1782,19 @@ void eDVBServicePlay::updateDecoder()
                m_current_audio_stream = 0;
                m_decoder->setAudioPID(apid, apidtype);
                if (!(m_is_pvr || m_timeshift_active || !m_is_primary))
+               {
                        m_decoder->setSyncPCR(pcrpid);
+                       if (apid != -1)
+                       {
+                               ePtr<iDVBDemux> data_demux;
+                               if (!h.getDataDemux(data_demux))
+                               {
+                                       m_radiotext_parser = new eDVBRadioTextParser(data_demux);
+                                       m_radiotext_parser->connectUpdatedRadiotext(slot(*this, &eDVBServicePlay::radioTextUpdated), m_radiotext_updated_connection);
+                                       m_radiotext_parser->start(apid);
+                               }
+                       }
+               }
                else
                        m_decoder->setSyncPCR(-1);
 
@@ -1801,9 +1803,6 @@ void eDVBServicePlay::updateDecoder()
                if (m_teletext_parser)
                        m_teletext_parser->start(tpid);
 
-               if (m_radiotext_parser)
-                       m_radiotext_parser->start(apid);
-
                if (!m_is_primary)
                        m_decoder->setTrickmode(1);