From 9b94097931e55794de02a6abc4d0defef82427b0 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 14 Jul 2002 14:35:16 +0200 Subject: [PATCH] Fixed a possible race condition in the cDvbPlayer --- CONTRIBUTORS | 1 + HISTORY | 2 ++ dvbplayer.c | 5 ++--- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index c281388f..58fc6761 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -156,6 +156,7 @@ Andreas Schultz for fixing a bug in the EPG bugfix mechanism if the extended description is shorter than 3 characters for adding direct access to the index data of cPalette (needed for displaying SPUs) + for pointing out a possible race condition in the cDvbPlayer Aaron Holtzman for writing 'ac3dec' diff --git a/HISTORY b/HISTORY index 1d95e933..0b735639 100644 --- a/HISTORY +++ b/HISTORY @@ -1375,3 +1375,5 @@ Video Disk Recorder Revision History provide a name to simply use a string that describes the player type (like, e.g., "DVD"). - Fixed a hangup when switching to the next file during replay. +- Fixed a possible race condition in the cDvbPlayer (thanks to Andreas Schultz + for pointing out this one). diff --git a/dvbplayer.c b/dvbplayer.c index d840543a..af6b28da 100644 --- a/dvbplayer.c +++ b/dvbplayer.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbplayer.c 1.6 2002/07/14 12:24:59 kls Exp $ + * $Id: dvbplayer.c 1.7 2002/07/14 14:30:36 kls Exp $ */ #include "dvbplayer.h" @@ -132,7 +132,7 @@ cDvbPlayer::cDvbPlayer(const char *FileName) backTrace = NULL; index = NULL; eof = false; - active = false; + active = true; playMode = pmPlay; playDir = pdForward; trickSpeed = NORMAL_SPEED; @@ -292,7 +292,6 @@ void cDvbPlayer::Activate(bool On) void cDvbPlayer::Action(void) { - active = true; dsyslog("dvbplayer thread started (pid=%d)", getpid()); uchar b[MAXFRAMESIZE];