summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_function.h
diff options
context:
space:
mode:
authorPedro J. Estébanez <pedrojrulez@gmail.com>2018-11-24 23:46:13 +0100
committerPedro J. Estébanez <pedrojrulez@gmail.com>2018-11-24 23:46:13 +0100
commitb499537e684449f9181f2a2cfa59305c1e3bd17a (patch)
treecf19359467a15615bccf00fbd11968f9758d5389 /modules/gdscript/gdscript_function.h
parenta16d9c6ab68cadb3cff07ef8b7b8c00717e98922 (diff)
downloadredot-engine-b499537e684449f9181f2a2cfa59305c1e3bd17a.tar.gz
Revert "Fix crash on signal/resume to dangling target"
This reverts commit 54bdc1e1f6a7fb85a5b193c9b8ecf0dcf06949e6.
Diffstat (limited to 'modules/gdscript/gdscript_function.h')
-rw-r--r--modules/gdscript/gdscript_function.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/modules/gdscript/gdscript_function.h b/modules/gdscript/gdscript_function.h
index a47070de4f..bfb6d673f1 100644
--- a/modules/gdscript/gdscript_function.h
+++ b/modules/gdscript/gdscript_function.h
@@ -225,7 +225,7 @@ private:
bool _static;
MultiplayerAPI::RPCMode rpc_mode;
- Ref<GDScript> _script;
+ GDScript *_script;
StringName name;
Vector<Variant> constants;
@@ -272,13 +272,15 @@ private:
public:
struct CallState {
- ObjectID instance_id;
+ ObjectID instance_id; //by debug only
+ ObjectID script_id;
+
GDScriptInstance *instance;
Vector<uint8_t> stack;
int stack_size;
Variant self;
uint32_t alloca_size;
- Ref<GDScript> script;
+ GDScript *_class;
int ip;
int line;
int defarg;
@@ -297,7 +299,7 @@ public:
int get_default_argument_addr(int p_idx) const;
GDScriptDataType get_return_type() const;
GDScriptDataType get_argument_type(int p_idx) const;
- GDScript *get_script() const { return const_cast<GDScript *>(_script.ptr()); }
+ GDScript *get_script() const { return _script; }
StringName get_source() const { return source; }
void debug_get_stack_member_state(int p_line, List<Pair<StringName, int> > *r_stackvars) const;