summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2005-05-05 12:53:43 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2005-05-05 12:53:43 +0200
commitff0a48d3be932e2d3ecab694ec013714b82db89f (patch)
tree7600cf605d2a9a18295b0939f3aff24f217b2d58
parentfd2c54cec050587ed086e74a849ff1b8158cf5b8 (diff)
downloadvdr-ff0a48d3be932e2d3ecab694ec013714b82db89f.tar.gz
vdr-ff0a48d3be932e2d3ecab694ec013714b82db89f.tar.bz2
Fixed a memory leak in cDvbPlayer
-rw-r--r--CONTRIBUTORS1
-rw-r--r--HISTORY1
-rw-r--r--dvbplayer.c4
3 files changed, 5 insertions, 1 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index e364353a..b84257a7 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -194,6 +194,7 @@ Stefan Huelswitt <huels@iname.com>
for adding MPEG1 replay capability to cPesAssembler
for fixing handling symbolic links in cRecordings::ScanVideoDir()
for reporting a memory leak in tComponent
+ for fixing a memory leak in cDvbPlayer
Ulrich Röder <roeder@efr-net.de>
for pointing out that there are channels that have a symbol rate higher than 27500
diff --git a/HISTORY b/HISTORY
index 658b9a0f..bb0481b7 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3480,3 +3480,4 @@ Video Disk Recorder Revision History
(thanks to Ville Skyttä).
- Updated the Danish OSD texts (thanks to Mogens Elneff).
- Fixed a memory leak in tComponent (thanks to Stefan Huelswitt and Daniel Thompson).
+- Fixed a memory leak in cDvbPlayer (thanks to Stefan Huelswitt).
diff --git a/dvbplayer.c b/dvbplayer.c
index 8605268b..ad5ccf2d 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.30 2005/01/14 14:00:56 kls Exp $
+ * $Id: dvbplayer.c 1.31 2005/05/05 12:52:40 kls Exp $
*/
#include "dvbplayer.h"
@@ -263,6 +263,7 @@ cDvbPlayer::~cDvbPlayer()
{
Detach();
Save();
+ delete readFrame; // might not have been stored in the buffer in Action()
delete index;
delete fileName;
delete backTrace;
@@ -296,6 +297,7 @@ void cDvbPlayer::Empty(void)
nonBlockingFileReader->Clear();
if ((readIndex = backTrace->Get(playDir == pdForward)) < 0)
readIndex = writeIndex;
+ delete readFrame; // might not have been stored in the buffer in Action()
readFrame = NULL;
playFrame = NULL;
ringBuffer->Clear();