diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2024-02-12 13:34:59 +0100 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2024-02-12 13:34:59 +0100 |
commit | 75a8c8a708208f40be16dc73b926bd16d68b6ab7 (patch) | |
tree | 636e9f34bc0f5291832805f25cffc5c3f3ee6394 /core | |
parent | b30373e32b9f358f2d1fa3b67ffc35b4e8d85982 (diff) | |
parent | b3cac9c0923f0afb520a35c0e792a6a73868fa84 (diff) | |
download | redot-engine-75a8c8a708208f40be16dc73b926bd16d68b6ab7.tar.gz |
Merge pull request #88183 from Repiteo/ref-instantiate-params
Allow Ref `instantiate` to accept constructor args
Diffstat (limited to 'core')
-rw-r--r-- | core/debugger/remote_debugger.cpp | 2 | ||||
-rw-r--r-- | core/object/ref_counted.h | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/core/debugger/remote_debugger.cpp b/core/debugger/remote_debugger.cpp index fe9e468774..6f2036705d 100644 --- a/core/debugger/remote_debugger.cpp +++ b/core/debugger/remote_debugger.cpp @@ -665,7 +665,7 @@ RemoteDebugger::RemoteDebugger(Ref<RemoteDebuggerPeer> p_peer) { // Performance Profiler Object *perf = Engine::get_singleton()->get_singleton_object("Performance"); if (perf) { - performance_profiler = Ref<PerformanceProfiler>(memnew(PerformanceProfiler(perf))); + performance_profiler.instantiate(perf); performance_profiler->bind("performance"); profiler_enable("performance", true); } diff --git a/core/object/ref_counted.h b/core/object/ref_counted.h index 228373d662..10be27b879 100644 --- a/core/object/ref_counted.h +++ b/core/object/ref_counted.h @@ -212,8 +212,9 @@ public: reference = nullptr; } - void instantiate() { - ref(memnew(T)); + template <typename... VarArgs> + void instantiate(VarArgs... p_params) { + ref(memnew(T(p_params...))); } Ref() {} |