From c0acfa567822b60101b5a83739402139f18b6d70 Mon Sep 17 00:00:00 2001 From: Kai Sommerfeld Date: Thu, 2 May 2019 09:09:11 +0200 Subject: [PATCH] [PVR] Fix CPVREpg::(Add|Update)Entry to not overwrite channeldata and epgid. --- xbmc/pvr/epg/Epg.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/xbmc/pvr/epg/Epg.cpp b/xbmc/pvr/epg/Epg.cpp index 42ec788c20275..860dc3257dd82 100644 --- a/xbmc/pvr/epg/Epg.cpp +++ b/xbmc/pvr/epg/Epg.cpp @@ -258,11 +258,12 @@ void CPVREpg::AddEntry(const CPVREpgInfoTag &tag) newTag = it->second; else { - newTag = std::make_shared(m_channelData, m_iEpgID); + newTag.reset(new CPVREpgInfoTag()); m_tags.insert(std::make_pair(tag.StartAsUTC(), newTag)); } newTag->Update(tag); + newTag->SetChannelData(m_channelData); newTag->SetEpgID(m_iEpgID); } @@ -348,13 +349,14 @@ bool CPVREpg::UpdateEntry(const CPVREpgInfoTagPtr &tag, bool bUpdateDatabase) } else { - infoTag = std::make_shared(m_channelData, m_iEpgID); + infoTag.reset(new CPVREpgInfoTag()); infoTag->SetUniqueBroadcastID(tag->UniqueBroadcastID()); m_tags.insert(std::make_pair(tag->StartAsUTC(), infoTag)); bNewTag = true; } infoTag->Update(*tag, bNewTag); + infoTag->SetChannelData(m_channelData); infoTag->SetEpgID(m_iEpgID); if (bUpdateDatabase)