浏览代码

fixed aciddemo map server crash

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12454 54d463be-8e91-2dee-dedb-b68131a5f0ec
Lupus 17 年之前
父节点
当前提交
8cf1f0ddf1
共有 2 个文件被更改,包括 6 次插入1 次删除
  1. 2 0
      Changelog-Trunk.txt
  2. 4 1
      src/map/battle.c

+ 2 - 0
Changelog-Trunk.txt

@@ -3,6 +3,8 @@ Date	Added
 AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
+2008/03/31
+	* Fixed ACIDDEMO crash, thanks to Kaato&Konard [Lupus]
 2008/03/30
 	* yet more login server stuff
 	- jA data structure compatibility renaming / adjustments

+ 4 - 1
src/map/battle.c

@@ -2518,7 +2518,10 @@ struct Damage battle_calc_misc_attack(struct block_list *src,struct block_list *
 		md.damage = 1+rand()%9999;
 		break;
 	case CR_ACIDDEMONSTRATION: // updated the formula based on a Japanese formula found to be exact [Reddozen]
-		md.damage = 7*tstatus->vit*sstatus->int_*sstatus->int_ / (10*(tstatus->vit+sstatus->int_));
+		if(tstatus->vit+sstatus->int_) //crash fix
+			md.damage = 7*tstatus->vit*sstatus->int_*sstatus->int_ / (10*(tstatus->vit+sstatus->int_));
+		else
+			md.damage = 0;
 		if (tsd) md.damage>>=1;
 		if (md.damage < 0 || md.damage > INT_MAX>>1)
 	  	//Overflow prevention, will anyone whine if I cap it to a few billion?