summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2016-08-14 17:39:52 +0200
committerGitHub <noreply@github.com>2016-08-14 17:39:52 +0200
commit694070de091852a2b3426072d2141224391a8cc8 (patch)
tree581c0366ad38166fc1253ad9aef5e94fe1290639
parent9f3ef7e80274cf2aa9f0940e043697b0a722da6b (diff)
parent9b3b068f5f2951238a470c535e038495a54383a3 (diff)
downloadhercules-694070de091852a2b3426072d2141224391a8cc8.tar.gz
hercules-694070de091852a2b3426072d2141224391a8cc8.tar.bz2
hercules-694070de091852a2b3426072d2141224391a8cc8.tar.xz
hercules-694070de091852a2b3426072d2141224391a8cc8.zip
Merge pull request #1394 from 4144/loginplugin
Fix login server null pointer access if packet handler in plugin init…
-rw-r--r--src/char/char.c5
-rw-r--r--src/login/login.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/src/char/char.c b/src/char/char.c
index 9275678e6..51411791e 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -3807,8 +3807,11 @@ int char_parse_frommap(int fd)
int packet_id = RFIFOW(fd,0);
if (VECTOR_LENGTH(HPM->packets[hpParse_FromMap]) > 0) {
int result = HPM->parse_packets(fd,packet_id,hpParse_FromMap);
- if (result == 1)
+ if (result == 1) {
+ if (sockt->session[fd] == NULL)
+ return 0;
continue;
+ }
if (result == 2)
return 0;
}
diff --git a/src/login/login.c b/src/login/login.c
index 7f5f78a4d..6b422eef2 100644
--- a/src/login/login.c
+++ b/src/login/login.c
@@ -817,8 +817,11 @@ int login_parse_fromchar(int fd)
if (VECTOR_LENGTH(HPM->packets[hpParse_FromChar]) > 0) {
int result = HPM->parse_packets(fd,command,hpParse_FromChar);
- if (result == 1)
+ if (result == 1) {
+ if (sockt->session[fd] == NULL)
+ return 0;
continue;
+ }
if (result == 2)
return 0;
}