Forráskód Böngészése

- Fixed possible crash due to invalid index in the pet select packet.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5314 54d463be-8e91-2dee-dedb-b68131a5f0ec
skotlex 19 éve
szülő
commit
8563167d94
2 módosított fájl, 4 hozzáadás és 0 törlés
  1. 1 0
      Changelog-Trunk.txt
  2. 3 0
      src/map/pet.c

+ 1 - 0
Changelog-Trunk.txt

@@ -5,6 +5,7 @@ IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.  EV
 GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS
 
 2006/02/17
+	* Fixed possible crash on pet egg select. [Skotlex]
 	* Massive update on the way splash/area (non-ground) skills work. [Skotlex]
 	- the new column 'splash' in skill_db is now used to determine the area of
 	  effect of all related skills (eg: splash range of fireball, area of effect

+ 3 - 0
src/map/pet.c

@@ -1068,6 +1068,9 @@ int pet_select_egg(struct map_session_data *sd,short egg_index)
 {
 	nullpo_retr(0, sd);
 
+	if(egg_index < 0 || egg_index >= MAX_INVENTORY)
+		return 0; //Forged packet!
+
 	if(sd->status.inventory[egg_index].card[0] == (short)0xff00)
 		intif_request_petdata(sd->status.account_id, sd->status.char_id, MakeDWord(sd->status.inventory[egg_index].card[1], sd->status.inventory[egg_index].card[2]) );
 	else {