diff options
author | Yuri Sizov <11782833+YuriSizov@users.noreply.github.com> | 2023-07-20 16:28:47 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-20 16:28:47 +0200 |
commit | dd05012122f77a915e4ba9dd6b43bae878667fbc (patch) | |
tree | 5b16f4e8322344799824de06a958ec33bb3b5b69 | |
parent | e8af22d3de637e59f5cf1c75cb89f725b6cfd713 (diff) | |
parent | 0a64abe891a3c0d1379c2c23c0f968dba643a324 (diff) | |
download | redot-engine-dd05012122f77a915e4ba9dd6b43bae878667fbc.tar.gz |
Merge pull request #79528 from univeous/video_adapter_fix
Fix crash when calling `get_video_adapter_*` in a thread
-rw-r--r-- | servers/rendering/rendering_server_default.cpp | 12 | ||||
-rw-r--r-- | servers/rendering/rendering_server_default.h | 31 |
2 files changed, 17 insertions, 26 deletions
diff --git a/servers/rendering/rendering_server_default.cpp b/servers/rendering/rendering_server_default.cpp index 65bdb94c9f..ff6bf3a6ba 100644 --- a/servers/rendering/rendering_server_default.cpp +++ b/servers/rendering/rendering_server_default.cpp @@ -258,22 +258,10 @@ uint64_t RenderingServerDefault::get_rendering_info(RenderingInfo p_info) { return RSG::utilities->get_rendering_info(p_info); } -String RenderingServerDefault::get_video_adapter_name() const { - return RSG::utilities->get_video_adapter_name(); -} - -String RenderingServerDefault::get_video_adapter_vendor() const { - return RSG::utilities->get_video_adapter_vendor(); -} - RenderingDevice::DeviceType RenderingServerDefault::get_video_adapter_type() const { return RSG::utilities->get_video_adapter_type(); } -String RenderingServerDefault::get_video_adapter_api_version() const { - return RSG::utilities->get_video_adapter_api_version(); -} - void RenderingServerDefault::set_frame_profiling_enabled(bool p_enable) { RSG::utilities->capturing_timestamps = p_enable; } diff --git a/servers/rendering/rendering_server_default.h b/servers/rendering/rendering_server_default.h index 797fe73ba0..340eb7394b 100644 --- a/servers/rendering/rendering_server_default.h +++ b/servers/rendering/rendering_server_default.h @@ -946,9 +946,26 @@ public: #undef server_name #undef ServerName + /* STATUS INFORMATION */ +#define ServerName RendererUtilities +#define server_name RSG::utilities + FUNC0RC(String, get_video_adapter_name) + FUNC0RC(String, get_video_adapter_vendor) + FUNC0RC(String, get_video_adapter_api_version) +#undef server_name +#undef ServerName #undef WRITE_ACTION #undef SYNC_DEBUG + virtual uint64_t get_rendering_info(RenderingInfo p_info) override; + virtual RenderingDevice::DeviceType get_video_adapter_type() const override; + + virtual void set_frame_profiling_enabled(bool p_enable) override; + virtual Vector<FrameProfileArea> get_frame_profile() override; + virtual uint64_t get_frame_profile_frame() override; + + virtual RID get_test_cube() override; + /* FREE */ virtual void free(RID p_rid) override { @@ -970,20 +987,6 @@ public: virtual void init() override; virtual void finish() override; - /* STATUS INFORMATION */ - - virtual uint64_t get_rendering_info(RenderingInfo p_info) override; - virtual String get_video_adapter_name() const override; - virtual String get_video_adapter_vendor() const override; - virtual RenderingDevice::DeviceType get_video_adapter_type() const override; - virtual String get_video_adapter_api_version() const override; - - virtual void set_frame_profiling_enabled(bool p_enable) override; - virtual Vector<FrameProfileArea> get_frame_profile() override; - virtual uint64_t get_frame_profile_frame() override; - - virtual RID get_test_cube() override; - /* TESTING */ virtual double get_frame_setup_time_cpu() const override; |