diff options
Diffstat (limited to 'src/emap/data')
-rw-r--r-- | src/emap/data/mapd.c | 3 | ||||
-rw-r--r-- | src/emap/data/mobd.c | 2 | ||||
-rw-r--r-- | src/emap/data/session.c | 2 |
3 files changed, 6 insertions, 1 deletions
diff --git a/src/emap/data/mapd.c b/src/emap/data/mapd.c index e7f7ee4..52440d7 100644 --- a/src/emap/data/mapd.c +++ b/src/emap/data/mapd.c @@ -19,6 +19,9 @@ struct MapdExt *mapd_get(int m) { + if (m < 0 || m >= map->count) + return NULL; + struct map_data *md = &map->list[m]; struct MapdExt *data = getFromMAPD(md, 0); if (!data) diff --git a/src/emap/data/mobd.c b/src/emap/data/mobd.c index 0df31e7..e3a6c34 100644 --- a/src/emap/data/mobd.c +++ b/src/emap/data/mobd.c @@ -34,7 +34,7 @@ struct MobdExt *mobd_get(struct mob_db *md) struct MobdExt *mobd_get_by_mob(TBL_MOB *md) { - if (!mob) + if (!md) return NULL; return mobd_get(mob->db_data[md->class_]); diff --git a/src/emap/data/session.c b/src/emap/data/session.c index dea86e6..33ddb41 100644 --- a/src/emap/data/session.c +++ b/src/emap/data/session.c @@ -19,6 +19,8 @@ struct SessionExt *session_get(int fd) { + if (fd < 0) + return NULL; struct SessionExt *data = getFromSession(sockt->session[fd], 0); if (!data) { |