diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 0da136fb..9e2317ff 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -2308,6 +2308,8 @@ Christoph Haubrich for fixing cRecording::LengthInSeconds(), which wrongfully rounded the result to full minutes for suggesting to check for NULL in cOsd::AddPixmap() + for making modified editing marks be written to disk whenever the replay progress + display gets hidden Pekka Mauno for fixing cSchedule::GetFollowingEvent() in case there is currently no present diff --git a/HISTORY b/HISTORY index 905f7f70..ff1681b6 100644 --- a/HISTORY +++ b/HISTORY @@ -7336,3 +7336,5 @@ Video Disk Recorder Revision History of each other, the '4' key moves the first one of them to the left, while the '6' key moves the last one of them to the right. The '7' and '9' key handle multiple marks at the same place as if it were one single mark. +- Modified editing marks are now written to disk whenever the replay progress display + gets hidden (thanks to Christoph Haubrich). diff --git a/menu.c b/menu.c index 9ade0376..b5a0d250 100644 --- a/menu.c +++ b/menu.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 2.64 2012/11/18 13:00:33 kls Exp $ + * $Id: menu.c 2.65 2012/11/18 13:07:53 kls Exp $ */ #include "menu.h" @@ -4482,10 +4482,6 @@ cReplayControl::~cReplayControl() Hide(); cStatus::MsgReplaying(this, NULL, fileName, false); Stop(); - if (marksModified) { - marks.Save(); - marksModified = false; - } if (currentReplayControl == this) currentReplayControl = NULL; } @@ -4573,6 +4569,10 @@ void cReplayControl::Hide(void) timeSearchActive = false; timeoutShow = 0; } + if (marksModified) { + marks.Save(); + marksModified = false; + } } void cReplayControl::ShowMode(void) @@ -4789,10 +4789,6 @@ void cReplayControl::EditCut(void) { if (*fileName) { Hide(); - if (marksModified) { - marks.Save(); - marksModified = false; - } if (!cCutter::Active()) { if (!marks.Count()) Skins.Message(mtError, tr("No editing marks defined!"));