2026-09-06 21:41:03

Signed-off-by: lizzie <lizzie@eden-emu.dev>
This commit is contained in:
lizzie
2026-09-06 21:41:03 +00:00
parent e1dcee37bf
commit eacb5f40a1
+6 -6
View File
@@ -55,11 +55,11 @@ constexpr u64 GpuClockMultiplier(Settings::GpuClock clock) {
struct GPU::Impl { struct GPU::Impl {
explicit Impl(Core::System& system_, bool is_async_, bool use_nvdec_) explicit Impl(Core::System& system_, bool is_async_, bool use_nvdec_)
: system{system_} : gpu_thread{system_}
, system{system_}
, use_nvdec{use_nvdec_} , use_nvdec{use_nvdec_}
, shader_notify() , shader_notify()
, is_async{is_async_} , is_async{is_async_}
, gpu_thread{system_}
{} {}
~Impl() = default; ~Impl() = default;
@@ -301,6 +301,10 @@ struct GPU::Impl {
return out; return out;
} }
// Destruction of thread must be done before all (non trivial)
// previous members has been destroyed
VideoCommon::GPUThread::ThreadManager gpu_thread;
Core::System& system; Core::System& system;
std::unique_ptr<VideoCore::RendererBase> renderer; std::unique_ptr<VideoCore::RendererBase> renderer;
@@ -340,10 +344,6 @@ struct GPU::Impl {
std::deque<size_t> request_swap_counters; std::deque<size_t> request_swap_counters;
std::mutex request_swap_mutex; std::mutex request_swap_mutex;
u64 pending_composite_fence{}; u64 pending_composite_fence{};
// Destruction of thread must be done after all (non trivial)
// previous members has been destroyed
VideoCommon::GPUThread::ThreadManager gpu_thread;
}; };
GPU::GPU(Core::System& system, bool is_async, bool use_nvdec) GPU::GPU(Core::System& system, bool is_async, bool use_nvdec)