summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Grimm <git@e-tobi.net>2010-02-02 12:01:15 +0100
committerTobias Grimm <git@e-tobi.net>2010-02-03 00:57:22 +0100
commitbdc743525fd9e051796c387b416bb9d66028404a (patch)
tree59fa002b9cdd5809c4cca3db6df076c0d98a59a4
parentca85202fdca7097841010760ec25167ae7c994fb (diff)
downloadvdr-plugin-ttxtsubs-bdc743525fd9e051796c387b416bb9d66028404a.tar.gz
vdr-plugin-ttxtsubs-bdc743525fd9e051796c387b416bb9d66028404a.tar.bz2
refactoring - it is save to free/delete a null pointer
use DELETENULL where appropriate
-rw-r--r--ttxtsubs.c9
-rw-r--r--ttxtsubsdisplay.c22
-rw-r--r--ttxtsubsdisplayer.c6
-rw-r--r--ttxtsubsfilter.c6
4 files changed, 11 insertions, 32 deletions
diff --git a/ttxtsubs.c b/ttxtsubs.c
index 9ace1ad..0927b0d 100644
--- a/ttxtsubs.c
+++ b/ttxtsubs.c
@@ -24,6 +24,7 @@
#include <vdr/menuitems.h>
#include <vdr/thread.h>
#include <vdr/config.h>
+#include <vdr/tools.h>
#include <semaphore.h>
#define TIMEMEASURE 0
@@ -523,12 +524,8 @@ void cPluginTtxtsubs::StopTtxt(void)
{
//dprint("cPluginTtxtsubs::StopTtxt\n");
- if(mDispl) {
- cTtxtSubsDisplayer *d = mDispl;
- HideTtxt();
- mDispl = NULL;
- delete d; // takes 0.03-0.04 s
- }
+ HideTtxt();
+ DELETENULL(mDispl); // takes 0.03-0.04 s
}
void cPluginTtxtsubs::ShowTtxt(void)
diff --git a/ttxtsubsdisplay.c b/ttxtsubsdisplay.c
index 3f49cb9..481d82b 100644
--- a/ttxtsubsdisplay.c
+++ b/ttxtsubsdisplay.c
@@ -30,6 +30,7 @@
#include <vdr/thread.h>
#include <vdr/font.h>
#include <vdr/config.h>
+#include <vdr/tools.h>
#include "ttxtsubsglobals.h"
#include "ttxtsubsdisplay.h"
@@ -106,13 +107,8 @@ cTtxtSubsDisplay::cTtxtSubsDisplay(void)
cTtxtSubsDisplay::~cTtxtSubsDisplay(void)
{
- if(mLastDataTime)
- free(mLastDataTime);
- if(mOsd) {
- cOsd* tmp = mOsd;
- mOsd = NULL;
- delete tmp;
- }
+ free(mLastDataTime);
+ delete mOsd;
if(mOsdFont && (mOsdFont != cFont::GetFont(fontOsd)))
delete mOsdFont;
}
@@ -395,11 +391,7 @@ void cTtxtSubsDisplay::ShowOSD(void)
rowcount++;
}
- if(mOsd) {
- cOsd* tmp = mOsd;
- mOsd = NULL;
- delete tmp;
- }
+ DELETENULL(mOsd);
mOsd = cOsdProvider::NewOsd(SCREENLEFT, SCREENTOP, 20); // level 20
if(!mOsd) {
@@ -507,9 +499,5 @@ void cTtxtSubsDisplay::ClearOSD(void)
cOSDSelfMemoryLock selfmem(&gSelfMem);
cMutexLock lock(&mOsdLock);
- if(mOsd) {
- cOsd* tmp = mOsd;
- mOsd = NULL;
- delete tmp;
- }
+ DELETENULL(mOsd);
}
diff --git a/ttxtsubsdisplayer.c b/ttxtsubsdisplayer.c
index ffec39c..8aab453 100644
--- a/ttxtsubsdisplayer.c
+++ b/ttxtsubsdisplayer.c
@@ -48,11 +48,7 @@ cTtxtSubsDisplayer::~cTtxtSubsDisplayer(void)
mGetCond.Broadcast();
this->Cancel(5);
- if(mDisp) {
- cTtxtSubsDisplay *tmp = mDisp;
- mDisp = NULL;
- delete tmp;
- }
+ delete mDisp;
}
// handled messages in ring buffer - runs in a thread of its own
diff --git a/ttxtsubsfilter.c b/ttxtsubsfilter.c
index ecfd170..3dff56f 100644
--- a/ttxtsubsfilter.c
+++ b/ttxtsubsfilter.c
@@ -103,10 +103,8 @@ void cTtxtSubsFilter::FreePages(void)
{
mCount = 0;
- if(mPages) {
- free(mPages);
- mPages = NULL;
- }
+ free(mPages);
+ mPages = NULL;
}