summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkamel5 <vdr.kamel5 (at) gmx (dot) net>2021-03-28 12:14:41 +0200
committerkamel5 <vdr.kamel5 (at) gmx (dot) net>2021-03-28 12:26:24 +0200
commit50879fa9311860456b8604e5618f81b6d607eaca (patch)
tree486e806d15ac40cffeba978808e48b512417b72e
parent894b5865cdfb605391c50a9d8b54bb7eac64c71d (diff)
downloadvdr-plugin-skindesigner-50879fa9311860456b8604e5618f81b6d607eaca.tar.gz
vdr-plugin-skindesigner-50879fa9311860456b8604e5618f81b6d607eaca.tar.bz2
Fix segfault with mpv plugin (thx to @lnj at vdr-portal.de)
This fix prevents a segfault when using the mpv plugin because there are no cutmarks.
-rw-r--r--coreengine/viewdisplayreplay.c5
-rw-r--r--displayreplay.c3
2 files changed, 5 insertions, 3 deletions
diff --git a/coreengine/viewdisplayreplay.c b/coreengine/viewdisplayreplay.c
index cdd2a77..1ee8684 100644
--- a/coreengine/viewdisplayreplay.c
+++ b/coreengine/viewdisplayreplay.c
@@ -313,8 +313,9 @@ void cViewReplay::SetProgressbar(int current, int total) {
}
void cViewReplay::SetMarks(const cMarks *marks, int current, int total) {
- if (veCutMarks)
- veCutMarks->Set(marks, current, total, timeShiftActive, timeShiftFramesTotal);
+ if (!veCutMarks)
+ return;
+ veCutMarks->Set(marks, current, total, timeShiftActive, timeShiftFramesTotal);
Render((int)eVeDisplayReplay::cutmarks);
}
diff --git a/displayreplay.c b/displayreplay.c
index 60079ff..a78d095 100644
--- a/displayreplay.c
+++ b/displayreplay.c
@@ -45,7 +45,8 @@ void cSDDisplayReplay::SetMode(bool Play, bool Forward, int Speed) {
void cSDDisplayReplay::SetProgress(int Current, int Total) {
if (ok) {
view->SetProgressbar(Current, Total);
- view->SetMarks(marks, Current, Total);
+ if (marks)
+ view->SetMarks(marks, Current, Total);
view->SetTimeshiftTimes(Current, Total);
view->SetEndTime(Current, Total);
view->DelayOnPause();