Merge pull request #3111 from janbar/epg_timeslot
[vuplus_xbmc] / xbmc / epg / Epg.cpp
index 911cb73..a538a5d 100644 (file)
@@ -303,7 +303,7 @@ CEpgInfoTagPtr CEpg::GetTagAround(const CDateTime &time) const
   CSingleLock lock(m_critSection);
   for (map<CDateTime, CEpgInfoTagPtr>::const_iterator it = m_tags.begin(); it != m_tags.end(); it++)
   {
-    if ((it->second->StartAsUTC() <= time) && (it->second->EndAsUTC() >= time))
+    if ((it->second->StartAsUTC() < time) && (it->second->EndAsUTC() > time))
       return it->second;
   }
 
@@ -628,33 +628,11 @@ bool CEpg::FixOverlappingEvents(bool bUpdateDb /* = false */)
       it->second->ClearTimer();
       m_tags.erase(it++);
     }
-    else if (previousTag->EndAsUTC() > currentTag->StartAsUTC())
+    else if (previousTag->EndAsUTC() != currentTag->StartAsUTC())
     {
-      currentTag->SetStartFromUTC(previousTag->EndAsUTC());
+      previousTag->SetEndFromUTC(currentTag->StartAsUTC());
       if (bUpdateDb)
-        m_changedTags.insert(make_pair(currentTag->UniqueBroadcastID(), currentTag));
-
-      previousTag = it->second;
-    }
-    else if (previousTag->EndAsUTC() < currentTag->StartAsUTC())
-    {
-      time_t start, end, middle;
-      previousTag->EndAsUTC().GetAsTime(start);
-      currentTag->StartAsUTC().GetAsTime(end);
-      middle = start + ((end - start) / 2);
-      CDateTime newTime(middle);
-
-      currentTag->SetStartFromUTC(newTime);
-      previousTag->SetEndFromUTC(newTime);
-
-      if (m_nowActiveStart == it->first)
-        m_nowActiveStart = currentTag->StartAsUTC();
-
-      if (bUpdateDb)
-      {
-        m_changedTags.insert(make_pair(currentTag->UniqueBroadcastID(), currentTag));
         m_changedTags.insert(make_pair(previousTag->UniqueBroadcastID(), previousTag));
-      }
 
       previousTag = it->second;
     }