diff --git a/src/eitd/SIevents.hpp b/src/eitd/SIevents.hpp index 6caf2447b..398f384b5 100644 --- a/src/eitd/SIevents.hpp +++ b/src/eitd/SIevents.hpp @@ -431,7 +431,8 @@ class SIevent void dumpSmall(void) const; // dumps the event to stdout (not all information) }; -typedef std::set > SIevents; +//typedef std::set > SIevents; +typedef std::vector SIevents; // Fuer for_each struct printSIevent : public std::unary_function diff --git a/src/eitd/SIsections.cpp b/src/eitd/SIsections.cpp index 82c426f68..04ad15596 100644 --- a/src/eitd/SIsections.cpp +++ b/src/eitd/SIsections.cpp @@ -68,7 +68,8 @@ void SIsectionEIT::parse(void) e.version = version; e.parse(event); - evts.insert(e); + //evts.insert(e); + evts.push_back(e); } parsed = 1; } @@ -106,7 +107,8 @@ void SIsectionEIT::parse(void) e.version = version_number; descriptors_loop_length = sizeof(struct eit_event) + ((evt->descriptors_loop_length_hi << 8) | evt->descriptors_loop_length_lo); e.parseDescriptors(actPos, min((unsigned)(bufEnd - actPos), descriptors_loop_length)); - evts.insert(e); + //evts.insert(e); + evts.push_back(e); actPos += descriptors_loop_length; } parsed = 1; diff --git a/src/eitd/sectionsd.cpp b/src/eitd/sectionsd.cpp index 355e31fd0..1ee4b307c 100644 --- a/src/eitd/sectionsd.cpp +++ b/src/eitd/sectionsd.cpp @@ -1548,7 +1548,7 @@ bool CEventsThread::addEvents() dprintf("[%s] adding %d events (begin)\n", name.c_str(), eit.events().size()); time_t zeit = time(NULL); - for (SIevents::iterator e = eit.events().begin(); e != eit.events().end(); ++e) { + for (SIevents::const_iterator e = eit.events().begin(); e != eit.events().end(); ++e) { if (!(e->times.empty())) { if ( ( e->times.begin()->startzeit < zeit + secondsToCache ) && ( ( e->times.begin()->startzeit + (long)e->times.begin()->dauer ) > zeit - oldEventsAre ) )