From b88a90aff1f23936ffe86d969438ad2475915ea4 Mon Sep 17 00:00:00 2001 From: Marten Richter Date: Sun, 19 Oct 2014 18:34:50 +0200 Subject: [PATCH] Fix segfault in vepgadvanced --- vepglistadvanced.cc | 13 ++++++++----- videoomx.cc | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/vepglistadvanced.cc b/vepglistadvanced.cc index fe19fb9..38a2555 100644 --- a/vepglistadvanced.cc +++ b/vepglistadvanced.cc @@ -458,7 +458,8 @@ void VEpgListAdvanced::drawDataChannel(bool doIndexPop) - Event* currentEvent; + + Event* currentEvent = NULL; EventList::iterator j; EventList* eventList = eventLista[0]; if (eventList) { @@ -514,7 +515,8 @@ void VEpgListAdvanced::drawDataNowNext(bool next, bool doIndexPop) - Event* currentEvent; + + Event* currentEvent = NULL; EventList::iterator j; int minevents=1; if (next) minevents++; @@ -552,7 +554,8 @@ void VEpgListAdvanced::drawDataNowNext(bool next, bool doIndexPop) } info->setChannelLogo((*chanList)[listIndex]->number); info->setStaticFallback(sa_tv); - currentEvent->index = sl.addOption(tempC, listIndex, first, info); + int index =sl.addOption(tempC, listIndex, first, info); + if (currentEvent) currentEvent->index = index; first = 0; } @@ -632,7 +635,7 @@ void VEpgListAdvanced::draw(bool doIndexPop) w.setPosition(115, area.h-35); w.draw(); - drawTextRJ(tr("[ok] = info"), 560+70, 385+80, DrawStyle::LIGHTTEXT); + drawTextRJ(tr("[ok] = info"), 560+70, sl.getY2()+4, DrawStyle::LIGHTTEXT); // All static stuff done @@ -693,7 +696,6 @@ Event* VEpgListAdvanced::getCurrentOptionEvent(int& channel) void VEpgListAdvanced::updateSelection() { - updateEpgData(); int channel=0; if (mode==OneChannel) { TVMediaInfo *info= new TVMediaInfo(); @@ -889,6 +891,7 @@ void VEpgListAdvanced::processMessage(Message* m) void VEpgListAdvanced::quickUpdate() { //only quick for plattform that need it! + updateEpgData(); updateSelection(); #ifdef GRADIENT_DRAWING draw(); diff --git a/videoomx.cc b/videoomx.cc index efaa9da..c5acde3 100644 --- a/videoomx.cc +++ b/videoomx.cc @@ -1061,7 +1061,7 @@ int VideoOMX::AllocateCodecsOMX() Log::getInstance()->log("Video", Log::NOTICE, "Allocate Codecs OMX"); //Clock, move later to audio including events - Log::getInstance()->log("Video", Log::NOTICE, "VideoType %d x %d i: %d", demux->getHorizontalSize(),demux->getVerticalSize(),demux->getInterlaced()); + Log::getInstance()->log("Video", Log::NOTICE, "Deinter VideoType %d x %d i: %d", demux->getHorizontalSize(),demux->getVerticalSize(),demux->getInterlaced()); if (deinterlace!=0 && /*(demux->getHorizontalSize()<=720 ) &&*/ demux->getInterlaced()) { //only deinterlace SD material dodeint=true; -- 2.39.2