From 269ee1e98ef1645957276ba4160c96db307f1771 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 25 Apr 2011 04:09:19 +0300 Subject: Add missing checks. --- src/map.cpp | 6 ++++++ src/utils/mkdir.cpp | 6 +++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/map.cpp b/src/map.cpp index 23089db4e..f79539567 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -1001,6 +1001,9 @@ Path Map::findPath(int startX, int startY, int destX, int destY, // Path to be built up (empty by default) Path path; + if (startX >= mWidth || startY >= mHeight) + return path; + // Declare open list, a list with open tiles sorted on F cost std::priority_queue openList; @@ -1601,6 +1604,9 @@ void SpecialLayer::addRoad(Path road) void SpecialLayer::clean() { + if (!mTiles) + return; + for (int f = 0; f < mWidth * mHeight; f ++) { MapItem *item = mTiles[f]; diff --git a/src/utils/mkdir.cpp b/src/utils/mkdir.cpp index f0cc65f53..4ab9f7d61 100644 --- a/src/utils/mkdir.cpp +++ b/src/utils/mkdir.cpp @@ -80,7 +80,7 @@ int mkdir_r(const char *pathname) } else { - delete tmp; + delete []tmp; return -1; } } @@ -97,7 +97,7 @@ int mkdir_r(const char *pathname) if (!(strlen(tmp) == 2 && !strcmp(tmp + 1, ":"))) #endif - delete tmp; + delete []tmp; return -1; } @@ -107,7 +107,7 @@ int mkdir_r(const char *pathname) *p = '/'; } } - delete tmp; + delete []tmp; return 0; } -- cgit v1.2.3-70-g09d2