summaryrefslogtreecommitdiff
path: root/coreengine/viewelementsdisplayreplay.c
diff options
context:
space:
mode:
Diffstat (limited to 'coreengine/viewelementsdisplayreplay.c')
-rw-r--r--coreengine/viewelementsdisplayreplay.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/coreengine/viewelementsdisplayreplay.c b/coreengine/viewelementsdisplayreplay.c
index 798bd29..8dd2727 100644
--- a/coreengine/viewelementsdisplayreplay.c
+++ b/coreengine/viewelementsdisplayreplay.c
@@ -25,10 +25,24 @@ void cVeDrRecTitle::SetTokenContainer(void) {
}
void cVeDrRecTitle::Set(const cRecording *recording) {
+ if (this->title) {
+ free(this->title);
+ this->title = NULL;
+ }
+ if (this->recording)
+ this->recording = NULL;
+ if (!recording)
+ return;
this->recording = recording;
}
void cVeDrRecTitle::Set(const char *title) {
+ if (this->title) {
+ free(this->title);
+ this->title = NULL;
+ }
+ if (this->recording)
+ this->recording = NULL;
if (!title)
return;
free(this->title);
@@ -52,9 +66,9 @@ bool cVeDrRecTitle::Parse(bool force) {
tokenContainer->AddStringToken((int)eDRRecTitleST::rectitle, recName);
tokenContainer->AddStringToken((int)eDRRecTitleST::recsubtitle, recInfo ? recInfo->ShortText() : "");
tokenContainer->AddStringToken((int)eDRRecTitleST::recdate, *ShortDateString(recording->Start()));
- tokenContainer->AddStringToken((int)eDRRecTitleST::rectime, *TimeString(recording->Start()));
+ tokenContainer->AddStringToken((int)eDRRecTitleST::rectime, *TimeString(recording->Start()));
} else if (title) {
- tokenContainer->AddStringToken((int)eDRRecTitleST::rectitle, title);
+ tokenContainer->AddStringToken((int)eDRRecTitleST::rectitle, title);
}
SetDirty();