fix: registering/unregistering objects during universe enter/exit causing stack overflows
This commit is contained in:
@@ -39,8 +39,9 @@ public class UniverseEntranceManager : Behaviour
|
|||||||
{
|
{
|
||||||
for (int i = toCallExitUniverses.Count - 1; i >= 0; i--)
|
for (int i = toCallExitUniverses.Count - 1; i >= 0; i--)
|
||||||
{
|
{
|
||||||
toCallExitUniverses[i].ExitUniverse(Universe);
|
IExitUniverse exitUniverse = toCallExitUniverses[i];
|
||||||
toCallExitUniverses.RemoveAt(i);
|
toCallExitUniverses.RemoveAt(i);
|
||||||
|
exitUniverse.ExitUniverse(Universe);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -48,8 +49,9 @@ public class UniverseEntranceManager : Behaviour
|
|||||||
{
|
{
|
||||||
for (int i = toCallEnterUniverses.Count - 1; i >= 0; i--)
|
for (int i = toCallEnterUniverses.Count - 1; i >= 0; i--)
|
||||||
{
|
{
|
||||||
toCallEnterUniverses[i].EnterUniverse(Universe);
|
IEnterUniverse enterUniverse = toCallEnterUniverses[i];
|
||||||
toCallEnterUniverses.RemoveAt(i);
|
toCallEnterUniverses.RemoveAt(i);
|
||||||
|
enterUniverse.EnterUniverse(Universe);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user