summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <remi@verschelde.fr>2021-08-01 11:12:33 +0200
committerGitHub <noreply@github.com>2021-08-01 11:12:33 +0200
commite5411a815cf3517efa2fd3dae54b1f2a5ce64b36 (patch)
treed24af357ccc9bb862fd6fb6ef5dad0566e071921 /core
parent8465ecc3ae5e33bf2aea04dd1db2d27455c0504f (diff)
parent17324db4caf61a8bf665d7122ca67da2a2d91043 (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.cpp10
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;