fix segfault on transponders with incorrect mjd entries in the TDT
[enigma2.git] / lib / dvb / esection.cpp
index ae88d100abfb05c011c9bcbdf217aae153b38c87..4758008a88db6e20235d1ebffbf78fc573807e8d 100644 (file)
@@ -23,8 +23,11 @@ void eGTable::sectionRead(const __u8 *d)
        {
                if (m_timeout)
                        m_timeout->stop();
-               m_reader->stop();
-               m_reader=0;
+               if (m_reader)
+               {
+                       m_reader->stop();
+                       m_reader=0;
+               }
                m_sectionRead_conn=0;
                ready = 1;
                tableReady(error);
@@ -35,8 +38,11 @@ void eGTable::sectionRead(const __u8 *d)
 void eGTable::timeout()
 {
        eDebug("timeout!");
-       m_reader->stop();
-       m_reader=0;
+       if (m_reader)
+       {
+               m_reader->stop();
+               m_reader=0;
+       }
        m_sectionRead_conn=0;
        ready = 1;
        error = -1;