Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 3 files). Show all
Unified · Split
| @@ -142,14 +142,18 @@ ScriptEngine::ScriptEngine(const QString& scriptContents, const QString& fileNam · 141 unmodified lines | ||
| 142 | 142 | } |
| 143 | 143 | |
| 144 | 144 | ScriptEngine::~ScriptEngine() { |
| 145 | + qCDebug(scriptengine) << __FUNCTION__ << "--- BEGIN --- script:" << getFilename(); | |
| 145 | 146 | qCDebug(scriptengine) << "Script Engine shutting down (destructor) for script:" << getFilename(); |
| 146 | 147 | |
| 147 | 148 | auto scriptEngines = DependencyManager::get<ScriptEngines>(); |
| 148 | 149 | if (scriptEngines) { |
| 150 | + qCDebug(scriptengine) << "About to remove ScriptEngine [" << getFilename() << "] from ScriptEngines!"; | |
| 149 | 151 | scriptEngines->removeScriptEngine(this); |
| 152 | + qCDebug(scriptengine) << "AFTER remove ScriptEngine [" << getFilename() << "] from ScriptEngines!"; | |
| 150 | 153 | } else { |
| 151 | 154 | qCWarning(scriptengine) << "Script destroyed after ScriptEngines!"; |
| 152 | 155 | } |
| 156 | + qCDebug(scriptengine) << __FUNCTION__ << "--- END --- script:" << getFilename(); | |
| 153 | 157 | } |
| 154 | 158 | |
| 155 | 159 | void ScriptEngine::disconnectNonEssentialSignals() { |
| @@ -1197,6 +1201,8 @@ void ScriptEngine::unloadEntityScript(const EntityItemID& entityID) { · 1041 unmodified lines | ||
| 1197 | 1201 | } |
| 1198 | 1202 | } |
| 1199 | 1203 | |
| 1204 | +#include <QScriptValueIterator> | |
| 1205 | + | |
| 1200 | 1206 | void ScriptEngine::unloadAllEntityScripts() { |
| 1201 | 1207 | if (QThread::currentThread() != thread()) { |
| 1202 | 1208 | #ifdef THREAD_DEBUGGING |
| @@ -1213,6 +1219,16 @@ void ScriptEngine::unloadAllEntityScripts() { · 10 unmodified lines | ||
| 1213 | 1219 | callEntityScriptMethod(entityID, "unload"); |
| 1214 | 1220 | } |
| 1215 | 1221 | _entityScripts.clear(); |
| 1222 | + | |
| 1223 | +#ifdef DEBUG_ENGINE_STATE | |
| 1224 | + qDebug() << "---- CURRENT STATE OF ENGINE: --------------------------"; | |
| 1225 | + QScriptValueIterator it(globalObject()); | |
| 1226 | + while (it.hasNext()) { | |
| 1227 | + it.next(); | |
| 1228 | + qDebug() << it.name() << ":" << it.value().toString(); | |
| 1229 | + } | |
| 1230 | + qDebug() << "--------------------------------------------------------"; | |
| 1231 | +#endif // DEBUG_ENGINE_STATE | |
| 1216 | 1232 | } |
| 1217 | 1233 | |
| 1218 | 1234 | void ScriptEngine::refreshFileScript(const EntityItemID& entityID) { |