diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-10-25 21:58:42 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-10-25 21:58:42 +0000 |
| commit | 7a55b56227014d8e6cff6773946d19219b4599f8 (patch) | |
| tree | dcf48c76bfc84fa811bcd201b6922304f4fd7138 /lib/service/servicedvb.cpp | |
| parent | a274f72e1fcbe404d1e68c605f21453123287fbd (diff) | |
| download | enigma2-7a55b56227014d8e6cff6773946d19219b4599f8.tar.gz enigma2-7a55b56227014d8e6cff6773946d19219b4599f8.zip | |
fix 'start'/'stop'/'select other' subtitles
Diffstat (limited to 'lib/service/servicedvb.cpp')
| -rw-r--r-- | lib/service/servicedvb.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index 89301de4..2ea7acf1 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -2022,7 +2022,6 @@ RESULT eDVBServicePlay::enableSubtitles(eWidget *parent, PyObject *entry) else { int pid = -page; - eDebug("start dvb subtitles on pid %04x", pid); m_subtitle_parser->start(pid); } @@ -2033,6 +2032,16 @@ RESULT eDVBServicePlay::disableSubtitles(eWidget *parent) { delete m_subtitle_widget; m_subtitle_widget = 0; + if (m_subtitle_parser) + { + m_subtitle_parser->stop(); + m_dvb_subtitle_pages.clear(); + } + if (m_teletext_parser) + { + m_teletext_parser->setPage(-1); + m_subtitle_pages.clear(); + } return 0; } @@ -2091,6 +2100,8 @@ void eDVBServicePlay::newSubtitlePage(const eDVBTeletextSubtitlePage &page) void eDVBServicePlay::checkSubtitleTiming() { // eDebug("checkSubtitleTiming"); + if (!m_subtitle_widget) + return; while (1) { enum { TELETEXT, DVB } type; |
