From 04fe8b73f03f89d5a67e16f5aa66c8aecbd53f1f Mon Sep 17 00:00:00 2001 From: Mark Vejvoda Date: Sat, 19 Mar 2011 18:11:15 +0000 Subject: [PATCH] - segfault bugfix for client menu --- source/glest_game/menu/menu_state_connected_game.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/source/glest_game/menu/menu_state_connected_game.cpp b/source/glest_game/menu/menu_state_connected_game.cpp index 41f24ae7..c60807e4 100644 --- a/source/glest_game/menu/menu_state_connected_game.cpp +++ b/source/glest_game/menu/menu_state_connected_game.cpp @@ -1049,7 +1049,9 @@ void MenuStateConnectedGame::update() { if(dataSynchMismatch == true) { string labelSynch = lang.get("DataNotSynchedTitle"); - if(mapCRC != 0 && mapCRC != gameSettings->getMapCRC() && listBoxMap.getSelectedItem() != ITEM_MISSING) { + if(mapCRC != 0 && mapCRC != gameSettings->getMapCRC() && + listBoxMap.getSelectedItemIndex() >= 0 && + listBoxMap.getSelectedItem() != ITEM_MISSING) { labelSynch = labelSynch + " " + lang.get("Map"); if(updateDataSynchDetailText == true && @@ -1059,7 +1061,9 @@ void MenuStateConnectedGame::update() { } } - if(tilesetCRC != 0 && tilesetCRC != gameSettings->getTilesetCRC() && listBoxTileset.getSelectedItem() != ITEM_MISSING) { + if(tilesetCRC != 0 && tilesetCRC != gameSettings->getTilesetCRC() && + listBoxTileset.getSelectedItemIndex() >= 0 && + listBoxTileset.getSelectedItem() != ITEM_MISSING) { labelSynch = labelSynch + " " + lang.get("Tileset"); if(updateDataSynchDetailText == true && lastTileDataSynchError != lang.get("DataNotSynchedTileset") + " " + listBoxTileset.getSelectedItem()) { @@ -1068,7 +1072,9 @@ void MenuStateConnectedGame::update() { } } - if(techCRC != 0 && techCRC != gameSettings->getTechCRC() && listBoxTechTree.getSelectedItem() != ITEM_MISSING) { + if(techCRC != 0 && techCRC != gameSettings->getTechCRC() && + listBoxTechTree.getSelectedItemIndex() >= 0 && + listBoxTechTree.getSelectedItem() != ITEM_MISSING) { labelSynch = labelSynch + " " + lang.get("TechTree"); if(updateDataSynchDetailText == true && lastTechtreeDataSynchError != lang.get("DataNotSynchedTechtree") + " " + listBoxTechTree.getSelectedItem()) {