summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Wilkemeyer <fw@f-ws.de>2015-12-15 16:41:34 +0100
committerHaru <haru@dotalux.com>2015-12-15 20:26:15 +0100
commit8a6f7e1f79146f6989bc921152f2fc539d44aa0f (patch)
treece110a745dbae75886a6d08a5a6e916031f732ae
parentb6efa351c0a55a2f45ef8724c066f26e1c67a90f (diff)
downloadhercules-8a6f7e1f79146f6989bc921152f2fc539d44aa0f.tar.gz
hercules-8a6f7e1f79146f6989bc921152f2fc539d44aa0f.tar.bz2
hercules-8a6f7e1f79146f6989bc921152f2fc539d44aa0f.tar.xz
hercules-8a6f7e1f79146f6989bc921152f2fc539d44aa0f.zip
Fixed some too long char buffer initializers.
- While they don't really cause an overflow (in C), there's no point in initializing strings to "\0". - Original commit message was: Found some static-assignment overflows -> fixed. Signed-off-by: Haru <haru@dotalux.com>
-rw-r--r--src/map/map.c20
-rw-r--r--src/map/script.c6
2 files changed, 15 insertions, 11 deletions
diff --git a/src/map/map.c b/src/map/map.c
index e1bf5232a..149a50a7f 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -3911,8 +3911,9 @@ struct map_zone_data *map_merge_zone(struct map_zone_data *main, struct map_zone
return zone;
}
-void map_zone_change2(int m, struct map_zone_data *zone) {
- char empty[1] = "\0";
+void map_zone_change2(int m, struct map_zone_data *zone)
+{
+ const char *empty = "";
if( map->list[m].zone == zone )
return;
@@ -3938,10 +3939,11 @@ void map_zone_change(int m, struct map_zone_data *zone, const char* start, const
map->zone_apply(m,zone,start,buffer,filepath);
}
/* removes previous mapflags from this map */
-void map_zone_remove(int m) {
+void map_zone_remove(int m)
+{
char flag[MAP_ZONE_MAPFLAG_LENGTH], params[MAP_ZONE_MAPFLAG_LENGTH];
unsigned short k;
- char empty[1] = "\0";
+ const char *empty = "";
for(k = 0; k < map->list[m].zone_mf_count; k++) {
size_t len = strlen(map->list[m].zone_mf[k]),j;
params[0] = '\0';
@@ -4665,9 +4667,10 @@ bool map_zone_mf_cache(int m, char *flag, char *params) {
return false;
}
-void map_zone_apply(int m, struct map_zone_data *zone, const char* start, const char* buffer, const char* filepath) {
+void map_zone_apply(int m, struct map_zone_data *zone, const char* start, const char* buffer, const char* filepath)
+{
int i;
- char empty[1] = "\0";
+ const char *empty = "";
char flag[MAP_ZONE_MAPFLAG_LENGTH], params[MAP_ZONE_MAPFLAG_LENGTH];
map->list[m].zone = zone;
for(i = 0; i < zone->mapflags_count; i++) {
@@ -4690,10 +4693,11 @@ void map_zone_apply(int m, struct map_zone_data *zone, const char* start, const
}
}
/* used on npc load and reload to apply all "Normal" and "PK Mode" zones */
-void map_zone_init(void) {
+void map_zone_init(void)
+{
char flag[MAP_ZONE_MAPFLAG_LENGTH], params[MAP_ZONE_MAPFLAG_LENGTH];
struct map_zone_data *zone;
- char empty[1] = "\0";
+ const char *empty = "";
int i,k,j;
zone = &map->zone_all;
diff --git a/src/map/script.c b/src/map/script.c
index b73918c64..27313c401 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -11747,9 +11747,9 @@ BUILDIN(setmapflag) {
case MF_NOWARPTO: map->list[m].flag.nowarpto = 1; break;
case MF_NIGHTMAREDROP: map->list[m].flag.pvp_nightmaredrop = 1; break;
case MF_ZONE:
- if( val2 ) {
- char zone[6] = "zone\0";
- char empty[1] = "\0";
+ if (val2 != NULL) {
+ const char *zone = "zone";
+ const char *empty = "";
char params[MAP_ZONE_MAPFLAG_LENGTH];
memcpy(params, val2, MAP_ZONE_MAPFLAG_LENGTH);
npc->parse_mapflag(map->list[m].name, empty, zone, params, empty, empty, empty, NULL);