aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Movement/PathGenerator.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/game/Movement/PathGenerator.cpp b/src/server/game/Movement/PathGenerator.cpp
index d133fc2baf0..d9769181dfc 100644
--- a/src/server/game/Movement/PathGenerator.cpp
+++ b/src/server/game/Movement/PathGenerator.cpp
@@ -817,10 +817,12 @@ dtStatus PathGenerator::FindSmoothPath(float const* startPos, float const* endPo
dtPolyRef visited[MAX_VISIT_POLY];
uint32 nvisited = 0;
- _navMeshQuery->moveAlongSurface(polys[0], iterPos, moveTgt, &_filter, result, visited, (int*)&nvisited, MAX_VISIT_POLY);
+ if (dtStatusFailed(_navMeshQuery->moveAlongSurface(polys[0], iterPos, moveTgt, &_filter, result, visited, (int*)&nvisited, MAX_VISIT_POLY)))
+ return DT_FAILURE;
npolys = FixupCorridor(polys, npolys, MAX_PATH_LENGTH, visited, nvisited);
- _navMeshQuery->getPolyHeight(polys[0], result, &result[1]);
+ if (dtStatusFailed(_navMeshQuery->getPolyHeight(polys[0], result, &result[1])))
+ return DT_FAILURE;
result[1] += 0.5f;
dtVcopy(iterPos, result);
@@ -865,7 +867,8 @@ dtStatus PathGenerator::FindSmoothPath(float const* startPos, float const* endPo
}
// Move position at the other side of the off-mesh link.
dtVcopy(iterPos, connectionEndPos);
- _navMeshQuery->getPolyHeight(polys[0], iterPos, &iterPos[1]);
+ if (dtStatusFailed(_navMeshQuery->getPolyHeight(polys[0], iterPos, &iterPos[1])))
+ return DT_FAILURE;
iterPos[1] += 0.5f;
}
}