You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2026-01-05 19:31:35 +00:00
Use loop instead of recursion when clearing proximity groups
This commit is contained in:
@@ -34,9 +34,9 @@
|
||||
|
||||
void ProximityGroup3D::_clear_groups() {
|
||||
Map<StringName, uint32_t>::Element *E;
|
||||
const int size = 16;
|
||||
|
||||
{
|
||||
const int size = 16;
|
||||
do {
|
||||
StringName remove_list[size];
|
||||
E = groups.front();
|
||||
int num = 0;
|
||||
@@ -50,11 +50,7 @@ void ProximityGroup3D::_clear_groups() {
|
||||
for (int i = 0; i < num; i++) {
|
||||
groups.erase(remove_list[i]);
|
||||
}
|
||||
}
|
||||
|
||||
if (E) {
|
||||
_clear_groups(); // call until we go through the whole list
|
||||
}
|
||||
} while (E);
|
||||
}
|
||||
|
||||
void ProximityGroup3D::_update_groups() {
|
||||
|
||||
Reference in New Issue
Block a user