diff options
Diffstat (limited to 'timers.c')
-rw-r--r-- | timers.c | 20 |
1 files changed, 11 insertions, 9 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: timers.c 1.6 2003/10/12 10:33:09 kls Exp $ + * $Id: timers.c 1.8 2003/12/27 13:10:04 kls Exp $ */ #include "timers.h" @@ -44,14 +44,14 @@ cTimer::cTimer(bool Instant, bool Pause) snprintf(file, sizeof(file), "%s%s", Setup.MarkInstantRecord ? "@" : "", *Setup.NameInstantRecord ? Setup.NameInstantRecord : channel->Name()); } -cTimer::cTimer(const cEventInfo *EventInfo) +cTimer::cTimer(const cEvent *Event) { startTime = stopTime = 0; recording = pending = false; active = true; - channel = Channels.GetByChannelID(EventInfo->GetChannelID(), true); - time_t tstart = EventInfo->GetTime(); - time_t tstop = tstart + EventInfo->GetDuration() + Setup.MarginStop * 60; + channel = Channels.GetByChannelID(Event->ChannelID(), true); + time_t tstart = Event->StartTime(); + time_t tstop = tstart + Event->Duration() + Setup.MarginStop * 60; tstart -= Setup.MarginStart * 60; struct tm tm_r; struct tm *time = localtime_r(&tstart, &tm_r); @@ -64,9 +64,9 @@ cTimer::cTimer(const cEventInfo *EventInfo) priority = Setup.DefaultPriority; lifetime = Setup.DefaultLifetime; *file = 0; - const char *Title = EventInfo->GetTitle(); + const char *Title = Event->Title(); if (!isempty(Title)) - strn0cpy(file, EventInfo->GetTitle(), sizeof(file)); + strn0cpy(file, Event->Title(), sizeof(file)); firstday = 0; summary = NULL; } @@ -216,8 +216,10 @@ bool cTimer::Parse(const char *s) strn0cpy(file, filebuffer, MaxFileName); strreplace(file, '|', ':'); strreplace(summary, '|', '\n'); - tChannelID cid = tChannelID::FromString(channelbuffer); - channel = cid.Valid() ? Channels.GetByChannelID(cid, true) : Channels.GetByNumber(atoi(channelbuffer)); + if (isnumber(channelbuffer)) + channel = Channels.GetByNumber(atoi(channelbuffer)); + else + channel = Channels.GetByChannelID(tChannelID::FromString(channelbuffer), true); if (!channel) { esyslog("ERROR: channel %s not defined", channelbuffer); result = false; |