diff options
| author | 2021-06-22 04:28:38 -0400 | |
|---|---|---|
| committer | 2021-06-22 04:28:38 -0400 | |
| commit | 698add85413780d062039f2807953d17e56ac3ec (patch) | |
| tree | 71600095a83aa9b711298232ecd5a1ca872649cb /src | |
| parent | Merge pull request #6481 from Morph1984/missing-peak-set (diff) | |
| parent | core: Make is_powered_on atomic (diff) | |
| download | yuzu-698add85413780d062039f2807953d17e56ac3ec.tar.gz yuzu-698add85413780d062039f2807953d17e56ac3ec.tar.xz yuzu-698add85413780d062039f2807953d17e56ac3ec.zip | |
Merge pull request #6511 from ReinUsesLisp/core-is-powered-data-race
core: Make is_powered_on atomic
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/core.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index c5004b7b4..e6f1aa0e7 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include <array> | 5 | #include <array> |
| 6 | #include <atomic> | ||
| 6 | #include <memory> | 7 | #include <memory> |
| 7 | #include <utility> | 8 | #include <utility> |
| 8 | 9 | ||
| @@ -377,7 +378,7 @@ struct System::Impl { | |||
| 377 | std::unique_ptr<Core::DeviceMemory> device_memory; | 378 | std::unique_ptr<Core::DeviceMemory> device_memory; |
| 378 | Core::Memory::Memory memory; | 379 | Core::Memory::Memory memory; |
| 379 | CpuManager cpu_manager; | 380 | CpuManager cpu_manager; |
| 380 | bool is_powered_on = false; | 381 | std::atomic_bool is_powered_on{}; |
| 381 | bool exit_lock = false; | 382 | bool exit_lock = false; |
| 382 | 383 | ||
| 383 | Reporter reporter; | 384 | Reporter reporter; |
| @@ -463,7 +464,7 @@ System::ResultStatus System::Load(Frontend::EmuWindow& emu_window, const std::st | |||
| 463 | } | 464 | } |
| 464 | 465 | ||
| 465 | bool System::IsPoweredOn() const { | 466 | bool System::IsPoweredOn() const { |
| 466 | return impl->is_powered_on; | 467 | return impl->is_powered_on.load(std::memory_order::relaxed); |
| 467 | } | 468 | } |
| 468 | 469 | ||
| 469 | void System::PrepareReschedule() { | 470 | void System::PrepareReschedule() { |