summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2012-09-09 09:19:15 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2012-09-09 09:19:15 +0200
commite6e9996060ea565eed33e7e04f74948001355fb6 (patch)
tree510333148fe94d16501906b827ff977e0351a95e
parent2ceb19e566c26a42b3d69244609772082f9a7997 (diff)
downloadvdr-e6e9996060ea565eed33e7e04f74948001355fb6.tar.gz
vdr-e6e9996060ea565eed33e7e04f74948001355fb6.tar.bz2
Fixed sluggish response when manipulating editing marks while a cutting thread is running
-rw-r--r--CONTRIBUTORS2
-rw-r--r--HISTORY4
-rw-r--r--menu.c15
-rw-r--r--menu.h3
4 files changed, 19 insertions, 5 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 49362acb..f603691e 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -2886,6 +2886,8 @@ Torsten Lang <info@torstenlang.de>
is stored on the video directory file system within the cRecording data
for suppressing setting the "broken link" or "TEI" flags when cutting recordings
if the editing point merges two seamlessly fitting parts of the same stream
+ for reporting a sluggish response when manipulating editing marks while a cutting
+ thread is running
Christian Ruppert <idl0r@gentoo.org>
for some improvements to the Makefiles
diff --git a/HISTORY b/HISTORY
index 7381b546..4f87b59e 100644
--- a/HISTORY
+++ b/HISTORY
@@ -7191,7 +7191,7 @@ Video Disk Recorder Revision History
turn on adding the source character to channel names whenever they are displayed
(suggested by Ludi Kaleni).
-2012-09-06: Version 1.7.30
+2012-09-07: Version 1.7.30
- Fixed sorting recordings in the top level video directory.
- Fixed handling control characters in SI data in case of UTF-8 encoded strings
@@ -7226,3 +7226,5 @@ Video Disk Recorder Revision History
- Fixed getting the file size and number of frames of ongoing recordings (only the
timestamp of the recording's directory was checked, while it should have been that
of the index file).
+- Fixed sluggish response when manipulating editing marks while a cutting thread
+ is running (reported by Torsten Lang).
diff --git a/menu.c b/menu.c
index 9f4c54e5..b3744637 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.58 2012/06/17 11:12:25 kls Exp $
+ * $Id: menu.c 2.59 2012/09/09 09:19:15 kls Exp $
*/
#include "menu.h"
@@ -4455,6 +4455,7 @@ cReplayControl::cReplayControl(bool PauseLive)
{
currentReplayControl = this;
displayReplay = NULL;
+ marksModified = false;
visible = modeOnly = shown = displayFrames = false;
lastCurrent = lastTotal = -1;
lastPlay = lastForward = false;
@@ -4472,6 +4473,10 @@ cReplayControl::~cReplayControl()
Hide();
cStatus::MsgReplaying(this, NULL, fileName, false);
Stop();
+ if (marksModified) {
+ marks.Save();
+ marksModified = false;
+ }
if (currentReplayControl == this)
currentReplayControl = NULL;
}
@@ -4729,7 +4734,7 @@ void cReplayControl::MarkToggle(void)
Goto(Current, true);
}
ShowTimed(2);
- marks.Save();
+ marksModified = true;
}
}
@@ -4766,7 +4771,7 @@ void cReplayControl::MarkMove(bool Forward)
}
m->SetPosition(p);
Goto(m->Position(), true);
- marks.Save();
+ marksModified = true;
}
}
}
@@ -4775,6 +4780,10 @@ 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!"));
diff --git a/menu.h b/menu.h
index ba93c5d2..10ffc7ab 100644
--- a/menu.h
+++ b/menu.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.h 2.11 2012/06/13 11:23:11 kls Exp $
+ * $Id: menu.h 2.12 2012/09/07 08:48:34 kls Exp $
*/
#ifndef __MENU_H
@@ -260,6 +260,7 @@ class cReplayControl : public cDvbPlayerControl {
private:
cSkinDisplayReplay *displayReplay;
cMarks marks;
+ bool marksModified;
bool visible, modeOnly, shown, displayFrames;
int lastCurrent, lastTotal;
bool lastPlay, lastForward;