diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2005-11-05 12:12:18 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2005-11-05 12:12:18 +0100 |
commit | 596e965a5334fec97b4ee4fd19223b6acfacf680 (patch) | |
tree | c4b91241f306ef94c9736bdad5e4137c863c66e7 /dvbspu.c | |
parent | 9607fd33a061530b3e26e2ffae14e87548b016ba (diff) | |
download | vdr-596e965a5334fec97b4ee4fd19223b6acfacf680.tar.gz vdr-596e965a5334fec97b4ee4fd19223b6acfacf680.tar.bz2 |
Fixed a race condition in the SPU decoder
Diffstat (limited to 'dvbspu.c')
-rw-r--r-- | dvbspu.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -8,7 +8,7 @@ * * parts of this file are derived from the OMS program. * - * $Id: dvbspu.c 1.16 2005/11/04 14:19:07 kls Exp $ + * $Id: dvbspu.c 1.17 2005/11/05 12:08:15 kls Exp $ */ #include <assert.h> @@ -338,6 +338,7 @@ sDvbSpuRect cDvbSpuDecoder::CalcAreaSize(sDvbSpuRect fgsize, cBitmap *fgbmp, sDv void cDvbSpuDecoder::Draw(void) { + cMutexLock MutexLock(&mutex); if (!spubmp) { Hide(); return; @@ -390,6 +391,7 @@ void cDvbSpuDecoder::Draw(void) void cDvbSpuDecoder::Hide(void) { + cMutexLock MutexLock(&mutex); delete osd; osd = NULL; } |