Skip to content

Commit 10c9d7e

Browse files
committed
Engine: Avoid duplicate scripts in scripts to remove
1 parent be30417 commit 10c9d7e

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/engine/internal/engine.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,8 @@ void Engine::frame()
143143
}
144144
}
145145

146-
m_scriptsToRemove.push_back(script.get());
146+
if (std::find(m_scriptsToRemove.begin(), m_scriptsToRemove.end(), script.get()) == m_scriptsToRemove.end())
147+
m_scriptsToRemove.push_back(script.get());
147148
}
148149
} while (!script->atEnd() && !m_breakFrame);
149150
}
@@ -262,7 +263,8 @@ void Engine::broadcast(unsigned int index, VirtualMachine *sourceScript, bool wa
262263
void Engine::stopScript(VirtualMachine *vm)
263264
{
264265
assert(vm);
265-
m_scriptsToRemove.push_back(vm);
266+
if (std::find(m_scriptsToRemove.begin(), m_scriptsToRemove.end(), vm) == m_scriptsToRemove.end())
267+
m_scriptsToRemove.push_back(vm);
266268
}
267269

268270
void Engine::stopTarget(Target *target, VirtualMachine *exceptScript)

0 commit comments

Comments
 (0)