diff -r 1f3c3f2f5b0a -r c711bdda59f4 webengine/webkitutils/HistoryProvider/HistoryController.cpp --- a/webengine/webkitutils/HistoryProvider/HistoryController.cpp Mon Mar 15 12:44:50 2010 +0200 +++ b/webengine/webkitutils/HistoryProvider/HistoryController.cpp Wed Mar 31 23:16:40 2010 +0300 @@ -152,7 +152,10 @@ CleanupStack::PushL( pageInfo ); return pageInfo; } - +void HistoryController::rollBackIndex() + { + m_currentIndex = m_tempCurrentIndex; + } /** */ void HistoryController::handleHistoryCommandL(int command) @@ -518,8 +521,11 @@ SelectArray* historyList = new( ELeave ) CArrayFixFlat(10); CleanupStack::PushL( historyList ); for( int i = m_historyStack.Count() - 1; i >= 0; i-- ) { - TBrCtlSelectOptionData t( TBrCtlSelectOptionData(entryByIndex(i)->pageTitle(), i == m_currentIndex, false, false) ); - historyList->AppendL(t); + if(entryByIndex(i)) + { + TBrCtlSelectOptionData t( TBrCtlSelectOptionData(entryByIndex(i)->pageTitle(), i == m_currentIndex, false, false) ); + historyList->AppendL(t); + } } // Display history dialog bool ret = m_historyCallback->dialogSelectOption(historyList);