History

Update ScriptEngine::entityScriptingInterface to be static pointer

Statically allocating the EntityScriptingInterface means we can't make sure it is initialized AFTER NodeList has been initialized

Ryan Huffman committed 11 years ago

Commit a4431571 parent 9a302ee2 files · +21 −13Browse files

Showing the changes to libraries/script-engine/src/ScriptEngine.h (1 of 2 files). Show all

Unified · Split

libraries/script-engine/src/ScriptEngine.h+2−2
@@ -47,7 +47,7 @@ public: · 46 unmodified lines
47 ~ScriptEngine();47 ~ScriptEngine();
48 48
49 /// Access the EntityScriptingInterface in order to initialize it with a custom packet sender and jurisdiction listener49 /// Access the EntityScriptingInterface in order to initialize it with a custom packet sender and jurisdiction listener
50 static EntityScriptingInterface* getEntityScriptingInterface() { return &_entityScriptingInterface; }50 static EntityScriptingInterface* getEntityScriptingInterface();
51 51
52 ArrayBufferClass* getArrayBufferClass() { return _arrayBufferClass; }52 ArrayBufferClass* getArrayBufferClass() { return _arrayBufferClass; }
53 53
@@ -153,7 +153,7 @@ private: · 99 unmodified lines
153 QObject* setupTimerWithInterval(const QScriptValue& function, int intervalMS, bool isSingleShot);153 QObject* setupTimerWithInterval(const QScriptValue& function, int intervalMS, bool isSingleShot);
154 void stopTimer(QTimer* timer);154 void stopTimer(QTimer* timer);
155 155
156 static EntityScriptingInterface _entityScriptingInterface;156 static EntityScriptingInterface* _entityScriptingInterface;
157 157
158 AbstractControllerScriptingInterface* _controllerScriptingInterface;158 AbstractControllerScriptingInterface* _controllerScriptingInterface;
159 AvatarData* _avatarData;159 AvatarData* _avatarData;