浏览代码

* VCAI: fixed crash when a locked hero died when attempting realizing a goal

Michał W. Urbańczyk 13 年之前
父节点
当前提交
a669831fc6
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      AI/VCAI/VCAI.cpp

+ 2 - 1
AI/VCAI/VCAI.cpp

@@ -1026,7 +1026,8 @@ void VCAI::makeTurnInternal()
 	try
 	{
 		//Pick objects reserved in previous turn - we expect only nerby objects there
-		BOOST_FOREACH (auto hero, reservedHeroesMap)
+		auto reservedHeroesCopy = reservedHeroesMap; //work on copy => the map may be changed while iterating (eg because hero died when attempting a goal)
+		BOOST_FOREACH (auto hero, reservedHeroesCopy)
 		{
 			cb->setSelection(hero.first.get());
 			boost::sort (hero.second, isCloser);