summaryrefslogtreecommitdiff
path: root/command/marks.cpp
diff options
context:
space:
mode:
authorJochen Dolze <vdr@dolze.de>2010-10-05 23:55:58 +0200
committerJochen Dolze <vdr@dolze.de>2010-10-05 23:55:58 +0200
commitcf943e09a29f255ec4f7fa8a7c6fc7813ea9ded0 (patch)
tree084bd259565224bd42f67bde2c1b84e78f97dc2d /command/marks.cpp
parent711def8f20707e2816c957d5d4edb8952b0876e6 (diff)
downloadvdr-plugin-markad-cf943e09a29f255ec4f7fa8a7c6fc7813ea9ded0.tar.gz
vdr-plugin-markad-cf943e09a29f255ec4f7fa8a7c6fc7813ea9ded0.tar.bz2
Improved start/stop mark processing
Diffstat (limited to 'command/marks.cpp')
-rw-r--r--command/marks.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/command/marks.cpp b/command/marks.cpp
index 18dabf4..8d433c4 100644
--- a/command/marks.cpp
+++ b/command/marks.cpp
@@ -205,6 +205,7 @@ clMark *clMarks::GetPrev(int Position, int Type, int Mask)
else
{
if (!mark) mark=last;
+ else mark=mark->Prev();
while (mark)
{
if ((mark->type & Mask)==Type) break;
@@ -222,15 +223,15 @@ clMark *clMarks::GetNext(int Position, int Type, int Mask)
{
if (Type==0xFF)
{
- if (mark->position>=Position) break;
+ if (mark->position>Position) break;
}
else
{
- if ((mark->position>=Position) && ((mark->type & Mask)==Type)) break;
+ if ((mark->position>Position) && ((mark->type & Mask)==Type)) break;
}
mark=mark->Next();
}
- if (mark) return mark->Next();
+ if (mark) return mark;
return NULL;
}