diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2021-08-01 11:12:33 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-01 11:12:33 +0200 |
commit | e5411a815cf3517efa2fd3dae54b1f2a5ce64b36 (patch) | |
tree | d24af357ccc9bb862fd6fb6ef5dad0566e071921 /core | |
parent | 8465ecc3ae5e33bf2aea04dd1db2d27455c0504f (diff) | |
parent | 17324db4caf61a8bf665d7122ca67da2a2d91043 (diff) |
Merge pull request #48958 from kleonc/astar-get_available_point_id-start-from-zero
Astar::get_available_point_id Return 0 instead of 1 when empty
Diffstat (limited to 'core')
-rw-r--r-- | core/math/a_star.cpp | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/core/math/a_star.cpp b/core/math/a_star.cpp index 88e11a630c..322eb7ac61 100644 --- a/core/math/a_star.cpp +++ b/core/math/a_star.cpp @@ -35,18 +35,12 @@ #include "scene/scene_string_names.h" int AStar::get_available_point_id() const { - if (points.is_empty()) { - return 1; - } - - // calculate our new next available point id if bigger than before or next id already contained in set of points. if (points.has(last_free_id)) { - int cur_new_id = last_free_id; + int cur_new_id = last_free_id + 1; while (points.has(cur_new_id)) { cur_new_id++; } - int &non_const = const_cast<int &>(last_free_id); - non_const = cur_new_id; + const_cast<int &>(last_free_id) = cur_new_id; } return last_free_id; |