fix pts relative seeking, make pts_t signed
[enigma2.git] / lib / service / servicedvb.cpp
index d49c5f6d3853d5f127007bfd8b34a3d8795ac043..f805ee70271cdb49408e8f75016c5b9fd3b7daff 100644 (file)
@@ -652,8 +652,9 @@ RESULT eDVBServicePlay::seekRelative(int direction, pts_t to)
        if (m_service_handler.getPVRChannel(pvr_channel))
                return -1;
        
-                       /* this is of couse wrong: PTS values don't match with bytes. */
-       return pvr_channel->seekToPosition(SEEK_CUR, direction * to);
+       to *= direction;
+       
+       return pvr_channel->seekTo(1, to);
 }
 
 RESULT eDVBServicePlay::getPlayPosition(pts_t &pos)