summaryrefslogtreecommitdiff
path: root/src/char
diff options
context:
space:
mode:
authorshennetsind <shennetsind@users.noreply.github.com>2015-01-17 21:00:26 -0200
committershennetsind <shennetsind@users.noreply.github.com>2015-01-17 21:00:26 -0200
commit9638e8e3730baea5b28670f8d38dbd417777c976 (patch)
tree09b347f4bdcef20893db0877c7f06e88d29b7bd1 /src/char
parenta3c4d675ba19df385be5d1e3966c61de7186da57 (diff)
parent3bf50615cd8a85bec21d0dab1ecf39a26c0e104b (diff)
downloadhercules-9638e8e3730baea5b28670f8d38dbd417777c976.tar.gz
hercules-9638e8e3730baea5b28670f8d38dbd417777c976.tar.bz2
hercules-9638e8e3730baea5b28670f8d38dbd417777c976.tar.xz
hercules-9638e8e3730baea5b28670f8d38dbd417777c976.zip
Merge pull request #444 from 4144/coverity
some fixes for different issues
Diffstat (limited to 'src/char')
-rw-r--r--src/char/char.c2
-rw-r--r--src/char/geoip.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/src/char/char.c b/src/char/char.c
index 1d9d1d65c..f1bacbeb3 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -1461,7 +1461,7 @@ bool char_char_slotchange(struct char_session_data *sd, int fd, unsigned short f
struct mmo_charstatus char_dat;
int from_id = 0;
- if( from > MAX_CHARS || to > MAX_CHARS || ( sd->char_slots && to > sd->char_slots ) || sd->found_char[from] <= 0 )
+ if( from >= MAX_CHARS || to >= MAX_CHARS || ( sd->char_slots && to > sd->char_slots ) || sd->found_char[from] <= 0 )
return false;
if( !chr->mmo_char_fromsql(sd->found_char[from], &char_dat, false) ) // Only the short data is needed.
diff --git a/src/char/geoip.c b/src/char/geoip.c
index 4fe03ab07..e5b77af1f 100644
--- a/src/char/geoip.c
+++ b/src/char/geoip.c
@@ -78,7 +78,7 @@ const char* geoip_getcountry(uint32 ipnum)
if (x >= GEOIP_COUNTRY_BEGIN) {
x = x-GEOIP_COUNTRY_BEGIN;
- if( x > GEOIP_MAX_COUNTRIES )
+ if( x >= GEOIP_MAX_COUNTRIES )
return geoip_countryname[0];
return geoip_countryname[x];
@@ -133,6 +133,7 @@ void geoip_init(void)
fno = fileno(db);
if (fstat(fno, &bufa) < 0) {
ShowError("geoip_readdb: Error stating GeoIP.dat! Error %d\n", errno);
+ fclose(db);
geoip->final(false);
return;
}