From e3de994c4ad9276413a205bbcc55d499e5b2b264 Mon Sep 17 00:00:00 2001 From: ZappoMan Date: Fri, 20 Feb 2015 18:42:02 -0800 Subject: [PATCH] more hacking --- libraries/entities-renderer/src/EntityTreeRenderer.cpp | 8 ++++++-- libraries/script-engine/src/ScriptEngine.cpp | 3 +-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/libraries/entities-renderer/src/EntityTreeRenderer.cpp b/libraries/entities-renderer/src/EntityTreeRenderer.cpp index b0396f32d6..c81599dd33 100644 --- a/libraries/entities-renderer/src/EntityTreeRenderer.cpp +++ b/libraries/entities-renderer/src/EntityTreeRenderer.cpp @@ -61,8 +61,12 @@ EntityTreeRenderer::EntityTreeRenderer(bool wantScripts, AbstractViewStateInterf EntityTreeRenderer::~EntityTreeRenderer() { // NOTE: we don't need to delete _entitiesScriptEngine because it's owned by the application and gets cleaned up // automatically but we do need to delete our sandbox script engine. - delete _sandboxScriptEngine; - _sandboxScriptEngine = NULL; + + if (_sandboxScriptEngine) { + qDebug() << "EntityTreeRenderer::~EntityTreeRenderer() delete _sandboxScriptEngine!!!!!"; + delete _sandboxScriptEngine; + _sandboxScriptEngine = NULL; + } } void EntityTreeRenderer::clear() { diff --git a/libraries/script-engine/src/ScriptEngine.cpp b/libraries/script-engine/src/ScriptEngine.cpp index 5cbf0b1149..9ec76e38b2 100644 --- a/libraries/script-engine/src/ScriptEngine.cpp +++ b/libraries/script-engine/src/ScriptEngine.cpp @@ -109,7 +109,7 @@ void ScriptEngine::gracefullyStopAllScripts(QObject* application) { qDebug() << "[" << QThread::currentThread() << "]" << "ScriptEngine::gracefullyStopAllScripts() ----------- START ------------------"; - QSetIterator i(_allKnownScriptEngines); + QMutableSetIterator i(_allKnownScriptEngines); while (i.hasNext()) { ScriptEngine* scriptEngine = i.next(); qDebug() << (void*)scriptEngine; @@ -121,7 +121,6 @@ void ScriptEngine::gracefullyStopAllScripts(QObject* application) { QObject::connect(scriptEngine, &ScriptEngine::doneRunning, &loop, &QEventLoop::quit); scriptEngine->disconnect(application); - scriptEngine->stop(); qDebug() << "waiting on script to stop... ";