summaryrefslogtreecommitdiff
path: root/src/emap/data
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-03-30 21:10:18 +0300
committerAndrei Karas <akaras@inbox.ru>2016-03-30 21:10:18 +0300
commit2c9c1e2eb8e74a6f8d9765993365648555ddf9b0 (patch)
treeb2f83e8dda892954898205526bd0d4796ba52641 /src/emap/data
parentb826af28255cbd69318929aeb06b4164feed5588 (diff)
downloadevol-hercules-2c9c1e2eb8e74a6f8d9765993365648555ddf9b0.tar.gz
evol-hercules-2c9c1e2eb8e74a6f8d9765993365648555ddf9b0.tar.bz2
evol-hercules-2c9c1e2eb8e74a6f8d9765993365648555ddf9b0.tar.xz
evol-hercules-2c9c1e2eb8e74a6f8d9765993365648555ddf9b0.zip
Add missing checks.
Diffstat (limited to 'src/emap/data')
-rw-r--r--src/emap/data/mapd.c3
-rw-r--r--src/emap/data/mobd.c2
-rw-r--r--src/emap/data/session.c2
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)
{