Browse Source

Fix bug in pathfinder causing endless loop in some situations

sapier 10 years ago
parent
commit
5d0f19fd7d
1 changed files with 2 additions and 0 deletions
  1. 2 0
      src/pathfinder.cpp

+ 2 - 0
src/pathfinder.cpp

@@ -823,6 +823,7 @@ bool pathfinder::update_cost_heuristic(	v3s16 ipos,
 							" out of range (" << m_limits.X.max << "," <<
 							m_limits.Y.max << "," << m_limits.Z.max
 							<<")" << std::endl);
+					direction = get_dir_heuristic(directions,g_pos);
 					continue;
 				}
 
@@ -831,6 +832,7 @@ bool pathfinder::update_cost_heuristic(	v3s16 ipos,
 				if (!g_pos2.valid) {
 					VERBOSE_TARGET << LVL "Pathfinder: no data for new position: "
 												<< PPOS(ipos2) << std::endl;
+					direction = get_dir_heuristic(directions,g_pos);
 					continue;
 				}