From d8bfc3d0473882ca4df16a4b1a754439070c8532 Mon Sep 17 00:00:00 2001 From: satbaby Date: Sun, 27 Nov 2011 16:42:39 +0000 Subject: [PATCH] -fix possible segfault if selected > items.size() git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@1920 e54a6e83-5905-42d5-8d5c-058d10e6a962 --- src/gui/widget/menue.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/widget/menue.cpp b/src/gui/widget/menue.cpp index 191578b3e..9e4d63d59 100644 --- a/src/gui/widget/menue.cpp +++ b/src/gui/widget/menue.cpp @@ -494,7 +494,7 @@ int CMenuWidget::exec(CMenuTarget* parent, const std::string &) uint64_t timeoutEnd = CRCInput::calcTimeoutEnd(g_settings.timing[SNeutrinoSettings::TIMING_MENU] == 0 ? 0xFFFF : g_settings.timing[SNeutrinoSettings::TIMING_MENU]); do { - if(hasItem() && selected >= 0) + if(hasItem() && selected >= 0 && (int)items.size() > selected ) bAllowRepeatLR = items[selected]->can_arrow; g_RCInput->getMsgAbsoluteTimeout(&msg, &data, &timeoutEnd, bAllowRepeatLR); @@ -657,7 +657,7 @@ int CMenuWidget::exec(CMenuTarget* parent, const std::string &) case (CRCInput::RC_right): case (CRCInput::RC_ok): { - if(hasItem() && selected > -1) { + if(hasItem() && selected > -1 && (int)items.size() > selected) { //exec this item... CMenuItem* item = items[selected]; item->msg = msg;