diff options
Diffstat (limited to 'detailview.c')
-rw-r--r-- | detailview.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/detailview.c b/detailview.c index ca351ab..12accc3 100644 --- a/detailview.c +++ b/detailview.c @@ -9,7 +9,12 @@ cDetailView::~cDetailView(void){ Cancel(-1); while (Active()) cCondWait::SleepMs(10); +#if defined (APIVERSNUM) && (APIVERSNUM >= 20301) + LOCK_CHANNELS_READ; + footer->LeaveDetailedViewMode(Channels->GetByChannelID(event->ChannelID())); +#else footer->LeaveDetailedViewMode(Channels.GetByChannelID(event->ChannelID())); +#endif if (view) delete view; } @@ -42,7 +47,12 @@ void cDetailView::InitiateView(void) { dateTime = cString::sprintf("%s %s - %s (%d %s)", *event->GetDateString(), *event->GetTimeString(), *event->GetEndTimeString(), event->Duration()/60, tr("min")); } view->SetDateTime(*dateTime); +#if defined (APIVERSNUM) && (APIVERSNUM >= 20301) + LOCK_CHANNELS_READ; + view->SetChannel(Channels->GetByChannelID(event->ChannelID(), true)); +#else view->SetChannel(Channels.GetByChannelID(event->ChannelID(), true)); +#endif view->SetEventID(event->EventID()); view->SetEvent(event); } @@ -90,7 +100,12 @@ std::string cDetailView::LoadReruns(void) { continue; i++; sstrReruns << *DayDateTime(r->event->StartTime()); +#if defined (APIVERSNUM) && (APIVERSNUM >= 20301) + LOCK_CHANNELS_READ; + const cChannel *channel = Channels->GetByChannelID(r->event->ChannelID(), true, true); +#else cChannel *channel = Channels.GetByChannelID(r->event->ChannelID(), true, true); +#endif if (channel) { sstrReruns << ", " << trVDR("Channel") << " " << channel->Number() << ":"; sstrReruns << " " << channel->ShortName(true); |