]> git.sesse.net Git - vlc/commitdiff
Qt/EPG: Fix event deletion.
authorAdrien Maglo <magsoft@videolan.org>
Wed, 28 Jul 2010 19:33:14 +0000 (21:33 +0200)
committerAdrien Maglo <magsoft@videolan.org>
Wed, 28 Jul 2010 19:33:14 +0000 (21:33 +0200)
modules/gui/qt4/components/epg/EPGWidget.cpp

index 948b83c090c2fe5eef161e16a82404e0766d4602..3bc91ac7a16fa68eea5ced50f4bf95300a5b4973 100644 (file)
@@ -116,7 +116,7 @@ void EPGWidget::updateEPG( vlc_epg_t **pp_epg, int i_epg )
     }
 
     // Remove old items
-    QMap<QString, EPGEvent*>::iterator i = m_events.begin();
+    QMultiMap<QString, EPGEvent*>::iterator i = m_events.begin();
     while ( i != m_events.end() )
     {
         EPGEvent* item = i.value();
@@ -124,7 +124,8 @@ void EPGWidget::updateEPG( vlc_epg_t **pp_epg, int i_epg )
         {
             m_epgView->delEvent( item );
             delete item;
-            i = m_events.erase( i );
+            i--;
+            m_events.erase( i + 1 );
         }
         else
             item->updated = false;
@@ -135,5 +136,7 @@ void EPGWidget::updateEPG( vlc_epg_t **pp_epg, int i_epg )
     // Update the global duration and start time.
     m_epgView->updateDuration();
     m_epgView->updateStartTime();
+    // Udate the channel list.
+    m_channelsWidget->update();
 }