diff options
Diffstat (limited to 'epghandler.c')
-rw-r--r-- | epghandler.c | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/epghandler.c b/epghandler.c index 426958d..4f1c786 100644 --- a/epghandler.c +++ b/epghandler.c @@ -112,12 +112,17 @@ bool cEEpgHandler::HandleEvent(cEvent* Event) { Event->SetDescription(origDescription.c_str()); } - cSchedulesLock SchedulesLock (true); - cSchedules *s = (cSchedules *) cSchedules::Schedules (SchedulesLock); - if (s) { - equivHandler->updateEquivalent(s, Event->ChannelID(), Event); - } else - LogE (0, prep("Error: could not lock schedules.")); + if (equivHandler->getEquiChanMap().count(*Event->ChannelID().ToString()) <= 0) + return true; + + equivHandler->updateEquivalent(Event->ChannelID(), Event); + +// cSchedulesLock SchedulesLock (true); +// cSchedules *s = (cSchedules *) cSchedules::Schedules (SchedulesLock); +// if (s) { +// equivHandler->updateEquivalent(s, Event->ChannelID(), Event); +// } else +// LogE (0, prep("Error: could not lock schedules.")); //TODO just to see the difference //else if (!origDescription.empty() && !origDescription.compare(Event->Description())) { @@ -133,12 +138,13 @@ bool cEEpgHandler::SortSchedule(cSchedule* Schedule) { Schedule->Sort(); - cSchedulesLock SchedulesLock (true); - cSchedules *s = (cSchedules *) cSchedules::Schedules (SchedulesLock); - if (s) { - equivHandler->sortEquivalents(Schedule->ChannelID(), s); - } else - LogE (0, prep("Error: could not lock schedules.")); + //NOK +// cSchedulesLock SchedulesLock (true); +// cSchedules *s = (cSchedules *) cSchedules::Schedules (SchedulesLock); +// if (s) { +// equivHandler->sortEquivalents(Schedule->ChannelID(), s); +// } else +// LogE (0, prep("Error: could not lock schedules.")); return true; } |