summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenpachi Developer <Kenpachi.Developer@gmx.de>2020-02-14 23:30:56 +0100
committerHaru <haru@dotalux.com>2020-04-05 21:20:35 +0200
commit81e3e74facba25aa1ecd7bea54f5d898612efe39 (patch)
treea4ba3dd158314fa95da16ad334dc2aa2525b773d
parente8c9e3a5b381b6d52234f26ea2dc18836b02c5bc (diff)
downloadhercules-81e3e74facba25aa1ecd7bea54f5d898612efe39.tar.gz
hercules-81e3e74facba25aa1ecd7bea54f5d898612efe39.tar.bz2
hercules-81e3e74facba25aa1ecd7bea54f5d898612efe39.tar.xz
hercules-81e3e74facba25aa1ecd7bea54f5d898612efe39.zip
Add ID validation to pet_read_db_sub() function
-rw-r--r--src/map/pet.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/map/pet.c b/src/map/pet.c
index 045c82eea..196f1f5a6 100644
--- a/src/map/pet.c
+++ b/src/map/pet.c
@@ -1350,6 +1350,12 @@ static int pet_read_db_sub(struct config_setting_t *it, int n, const char *sourc
ShowWarning("pet_read_db_sub: Missing Id in \"%s\", entry #%d, skipping.\n", source, n);
return 0;
}
+
+ if (mob->db_checkid(i32) == 0) {
+ ShowWarning("pet_read_db_sub: Invalid Id %d in \"%s\", entry #%d, skipping.\n", i32, source, n);
+ return 0;
+ }
+
pet->db[n].class_ = i32;
if (!libconfig->setting_lookup_string(it, "SpriteName", &str) || !*str ) {