more python fixes
[enigma2.git] / lib / dvb / dvb.cpp
index ad5dfa641ea9d4fa35658e186be3842cd62bee34..8c874e8671149ad36d2a7dda91f0343f47691b8b 100644 (file)
@@ -42,6 +42,16 @@ DEFINE_REF(eDVBResourceManager);
 
 eDVBResourceManager *eDVBResourceManager::instance;
 
+RESULT eDVBResourceManager::getInstance(ePtr<eDVBResourceManager> &ptr)
+{
+       if (instance)
+       {
+               ptr = instance;
+               return 0;
+       }
+       return -1;
+}
+
 eDVBResourceManager::eDVBResourceManager()
        :m_releaseCachedChannelTimer(eApp)
 {
@@ -788,7 +798,11 @@ void eDVBChannel::getNextSourceSpan(off_t current_offset, size_t bytes_read, off
                }
                
                if (relative == 1) /* pts relative */
+               {
                        pts += now;
+                       if (pts < 0)
+                               pts = 0;
+               }
 
                if (relative != 2)
                        if (pts < 0)