From 1a2f74f43a5013b023a3f7a47a1a28fa7be19672 Mon Sep 17 00:00:00 2001 From: Ryan Huffman Date: Tue, 22 Mar 2016 11:26:10 -0700 Subject: [PATCH] Add protection around ScriptEngine::runInThread being called twice --- libraries/script-engine/src/ScriptEngine.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libraries/script-engine/src/ScriptEngine.cpp b/libraries/script-engine/src/ScriptEngine.cpp index 61ebfe4515..3f403b3677 100644 --- a/libraries/script-engine/src/ScriptEngine.cpp +++ b/libraries/script-engine/src/ScriptEngine.cpp @@ -158,6 +158,13 @@ void ScriptEngine::disconnectNonEssentialSignals() { } void ScriptEngine::runInThread() { + Q_ASSERT_X(!_isThreaded, "ScriptEngine::runInThread()", "runInThread should not be called more than once"); + + if (_isThreaded) { + qCWarning(scriptengine) << "ScriptEngine already running in thread: " << getFilename(); + return; + } + _isThreaded = true; QThread* workerThread = new QThread(); // thread is not owned, so we need to manage the delete QString scriptEngineName = QString("Script Thread:") + getFilename();