summaryrefslogtreecommitdiff
path: root/cutter.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <Klaus (dot) Schmidinger (at) tvdr (dot) de>2010-09-19 16:00:00 +0200
committerKlaus Schmidinger <Klaus (dot) Schmidinger (at) tvdr (dot) de>2010-09-19 16:00:00 +0200
commit58db02442b375f5669416e6e744a8325ed363f99 (patch)
treec254912dffebfa6197c0a0a699ae79add7b85ef0 /cutter.c
parentc2c45d68c644684e002a92ceee83af7550aaa1e4 (diff)
downloadvdr-patch-lnbsharing-58db02442b375f5669416e6e744a8325ed363f99.tar.gz
vdr-patch-lnbsharing-58db02442b375f5669416e6e744a8325ed363f99.tar.bz2
Version 1.7.16vdr-1.7.16
- Updated the Italian OSD texts (thanks to Diego Pierotto). - Added missing Dtypes for ATSC (thanks to Alex Lasnier). - Updated the Portuguese language texts (thanks to Cristiano A. Silva). - Updated the Finnish OSD texts (thanks to Rolf Ahrenberg). - Fixed the array size of Atypes in cPatFilter::Process() (thanks to Rolf Ahrenberg). - Added locking to the cCutter functions to avoid a crash in case CutRecording() is called from a plugin (reported by Andreas Mair). - Fixed DDS detection for HD resolution subtitles (thanks to Reinhard Nissl). - Fixed following symbolic links in RemoveFileOrDir(). - Added support for languages that are written right-to-left (based on a patch from Osama Alrawab). See INSTALL for information on how to turn this on. - Added Arabian language texts (thanks to Osama Alrawab).
Diffstat (limited to 'cutter.c')
-rw-r--r--cutter.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/cutter.c b/cutter.c
index ff6b4ed..c1f4984 100644
--- a/cutter.c
+++ b/cutter.c
@@ -4,13 +4,12 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: cutter.c 2.4 2010/01/02 13:08:08 kls Exp $
+ * $Id: cutter.c 2.5 2010/08/29 13:35:18 kls Exp $
*/
#include "cutter.h"
#include "recording.h"
#include "remux.h"
-#include "thread.h"
#include "videodir.h"
// --- cCuttingThread --------------------------------------------------------
@@ -194,6 +193,7 @@ void cCuttingThread::Action(void)
// --- cCutter ---------------------------------------------------------------
+cMutex cCutter::mutex;
char *cCutter::editedVersionName = NULL;
cCuttingThread *cCutter::cuttingThread = NULL;
bool cCutter::error = false;
@@ -201,6 +201,7 @@ bool cCutter::ended = false;
bool cCutter::Start(const char *FileName)
{
+ cMutexLock MutexLock(&mutex);
if (!cuttingThread) {
error = false;
ended = false;
@@ -231,6 +232,7 @@ bool cCutter::Start(const char *FileName)
void cCutter::Stop(void)
{
+ cMutexLock MutexLock(&mutex);
bool Interrupted = cuttingThread && cuttingThread->Active();
const char *Error = cuttingThread ? cuttingThread->Error() : NULL;
delete cuttingThread;
@@ -247,6 +249,7 @@ void cCutter::Stop(void)
bool cCutter::Active(void)
{
+ cMutexLock MutexLock(&mutex);
if (cuttingThread) {
if (cuttingThread->Active())
return true;
@@ -263,6 +266,7 @@ bool cCutter::Active(void)
bool cCutter::Error(void)
{
+ cMutexLock MutexLock(&mutex);
bool result = error;
error = false;
return result;
@@ -270,6 +274,7 @@ bool cCutter::Error(void)
bool cCutter::Ended(void)
{
+ cMutexLock MutexLock(&mutex);
bool result = ended;
ended = false;
return result;