mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-27 15:32:59 +02:00
sectionsd.cpp:sort unique search-eventlist
This commit is contained in:
@@ -2176,6 +2176,17 @@ printf("SIevent size: %d\n", sizeof(SIevent));
|
||||
}
|
||||
|
||||
/* was: commandAllEventsChannelID sendAllEvents */
|
||||
inline static bool sortbyEventid (const CChannelEvent& a, const CChannelEvent& b)
|
||||
{
|
||||
return (a.channelID == b.channelID && a.eventID == b.eventID);
|
||||
|
||||
}
|
||||
|
||||
inline static bool sortByDateTime (const CChannelEvent& a, const CChannelEvent& b)
|
||||
{
|
||||
return a.startTime < b.startTime;
|
||||
}
|
||||
|
||||
void sectionsd_getEventsServiceKey(t_channel_id serviceUniqueKey, CChannelEventList &eList, char search = 0, std::string search_text = "")
|
||||
{
|
||||
dprintf("sendAllEvents for " PRINTF_CHANNEL_ID_TYPE "\n", serviceUniqueKey);
|
||||
@@ -2233,7 +2244,11 @@ void sectionsd_getEventsServiceKey(t_channel_id serviceUniqueKey, CChannelEventL
|
||||
else if ( serviceIDfound )
|
||||
break; // sind nach serviceID und startzeit sortiert -> nicht weiter suchen
|
||||
}
|
||||
|
||||
if(!eList.empty()){
|
||||
sort(eList.begin(),eList.end(),sortByDateTime);
|
||||
unique(eList.begin(),eList.end(),sortbyEventid);
|
||||
eList.erase(unique(eList.begin(),eList.end(),sortbyEventid),eList.end());
|
||||
}
|
||||
unlockEvents();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user