aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/tstools.cpp
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2009-09-03 16:33:42 +0200
committerghost <andreas.monzner@multimedia-labs.de>2009-09-03 16:33:42 +0200
commit29b7c8d9920725729d6acb5b7795cd65f8cae00a (patch)
treea9111aa0b0e6a7723d0e72b41987c97012b35ad2 /lib/dvb/tstools.cpp
parentc29c26df0e969b7caffe60a30d42e26f8f5cbbf4 (diff)
downloadenigma2-29b7c8d9920725729d6acb5b7795cd65f8cae00a.tar.gz
enigma2-29b7c8d9920725729d6acb5b7795cd65f8cae00a.zip
fix skipping forward/backward
Diffstat (limited to 'lib/dvb/tstools.cpp')
-rw-r--r--lib/dvb/tstools.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/dvb/tstools.cpp b/lib/dvb/tstools.cpp
index 06e8ba0f..a9eef406 100644
--- a/lib/dvb/tstools.cpp
+++ b/lib/dvb/tstools.cpp
@@ -662,7 +662,8 @@ int eDVBTSTools::findNextPicture(off_t &offset, size_t &len, int &distance, int
off_t new_offset = offset;
size_t new_len = len;
-
+ int first = 1;
+
while (distance > 0)
{
int dir = direction;
@@ -676,8 +677,9 @@ int eDVBTSTools::findNextPicture(off_t &offset, size_t &len, int &distance, int
// eDebug("we moved %d, %d to go frames (now at %llx)", dir, distance, new_offset);
- if (distance >= 0)
+ if (distance >= 0 || first)
{
+ first = 0;
offset = new_offset;
len = new_len;
nr_frames += abs(dir);