瀏覽代碼

Workaround to avoid crash on invalid bonus

Ivan Savenko 1 年之前
父節點
當前提交
a7c838036d
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      server/battles/BattleActionProcessor.cpp

+ 4 - 1
server/battles/BattleActionProcessor.cpp

@@ -1088,7 +1088,10 @@ void BattleActionProcessor::attackCasting(const CBattleInfoCallback & battle, bo
 		TConstBonusListPtr spells = attacker->getBonuses(Selector::type()(attackMode));
 		for(const auto & sf : *spells)
 		{
-			spellsToCast.insert(sf->subtype.as<SpellID>());
+			if (sf->subtype.as<SpellID>() != SpellID())
+				spellsToCast.insert(sf->subtype.as<SpellID>());
+			else
+				logMod->error("Invalid spell to cast during attack!");
 		}
 		for(SpellID spellID : spellsToCast)
 		{