aboutsummaryrefslogtreecommitdiff
path: root/src/server/collision/Maps/TileAssembler.cpp
diff options
context:
space:
mode:
authorSubv <s.v.h21@hotmail.com>2013-05-17 22:29:58 -0500
committerSubv <s.v.h21@hotmail.com>2013-05-17 22:29:58 -0500
commit60a88a08f5e85c1986aee49f9bfdbf8fa254f370 (patch)
treeb916b551c9830d583bbaff2d880ec77267b28905 /src/server/collision/Maps/TileAssembler.cpp
parent1c3121b9cf859c2c0978600d98c365ec3b724e4c (diff)
* Some more static analysis issues fixed.
Diffstat (limited to 'src/server/collision/Maps/TileAssembler.cpp')
-rw-r--r--src/server/collision/Maps/TileAssembler.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/server/collision/Maps/TileAssembler.cpp b/src/server/collision/Maps/TileAssembler.cpp
index ba1ae275c9a..8cd6d92beb2 100644
--- a/src/server/collision/Maps/TileAssembler.cpp
+++ b/src/server/collision/Maps/TileAssembler.cpp
@@ -498,9 +498,10 @@ namespace VMAP
}
char ident[8];
+ ident[7] = 0;
int readOperation = 0;
-
- READ_OR_RETURN(&ident, 8);
+
+ READ_OR_RETURN(&ident, 7);
CMP_OR_RETURN(ident, RAW_VMAP_MAGIC);
// we have to read one int. This is needed during the export and we have to skip it here
@@ -516,7 +517,8 @@ namespace VMAP
for (uint32 g = 0; g < groups && succeed; ++g)
succeed = groupsArray[g].Read(rf);
- fclose(rf);
+ if (!succeed) /// rf will be freed inside Read if the function had any errors.
+ fclose(rf);
return succeed;
}