summaryrefslogtreecommitdiff
path: root/menusched.c
diff options
context:
space:
mode:
authorhorchi <vdr@jwendel.de>2017-03-14 07:30:24 +0100
committerhorchi <vdr@jwendel.de>2017-03-14 07:30:24 +0100
commit3345d4c5afa59a3a7f536fec61fb314bc00640c6 (patch)
treecaeb9c570da706f088ddea3727d8a704b1810255 /menusched.c
parentfc75b2cfa67c6b910293059614325c10a720f995 (diff)
downloadvdr-plugin-epg2vdr-3345d4c5afa59a3a7f536fec61fb314bc00640c6.tar.gz
vdr-plugin-epg2vdr-3345d4c5afa59a3a7f536fec61fb314bc00640c6.tar.bz2
2017-03-146: version 1.1.47 (horchi)\n - added: Started extended event interface for skins\n\n1.1.47
Diffstat (limited to 'menusched.c')
-rw-r--r--menusched.c33
1 files changed, 31 insertions, 2 deletions
diff --git a/menusched.c b/menusched.c
index 452c7b4..82f4a31 100644
--- a/menusched.c
+++ b/menusched.c
@@ -193,17 +193,46 @@ cMenuEpgScheduleItem::eScheduleSortMode cMenuEpgScheduleItem::sortMode = ssmAllT
// Object
//***************************************************************************
-cMenuEpgScheduleItem::cMenuEpgScheduleItem(cMenuDb* db, const cEvent* Event, const cChannel* Channel, bool WithDate)
+cMenuEpgScheduleItem::cMenuEpgScheduleItem(cMenuDb* db, const cEvent* Event,
+ const cChannel* Channel, bool WithDate)
{
+ ownEvent = 0;
menuDb = db;
- event = Event;
+ if (Event)
+ {
+ FILE* inMem = 0;
+ char* bp;
+ size_t size;
+
+ if (inMem = open_memstream(&bp, &size))
+ {
+ Event->Dump(inMem, "", yes);
+ fflush(inMem);
+ fclose(inMem);
+
+ ownEvent = new cEpgEvent(Event->EventID());
+ inMem = fmemopen(bp, strlen(bp), "r");
+ ownEvent->Read(inMem);
+ fclose(inMem);
+
+ ownEvent->setImageCount(1);
+ }
+ }
+
+ event = ownEvent ? ownEvent : Event;
+
channel = Channel;
withDate = WithDate;
timerMatch = tmNone;
Update(yes);
}
+cMenuEpgScheduleItem::~cMenuEpgScheduleItem()
+{
+ delete ownEvent;
+}
+
//***************************************************************************
// Compare
//***************************************************************************