summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends
diff options
context:
space:
mode:
authorStenzek <stenzek@gmail.com>2019-03-29 19:55:00 +1000
committerStenzek <stenzek@gmail.com>2019-03-29 19:55:00 +1000
commitd0d010f8549cc902829f567b3b5127d9a0556ca5 (patch)
treeceb2be1d1e4054b50e6d12640a75918c679f386d /Source/Core/VideoBackends
parent3b86c9328577e09daf762b83a195de2c3e53f4d7 (diff)
D3D11: Make stateman a unique_ptr
Diffstat (limited to 'Source/Core/VideoBackends')
-rw-r--r--Source/Core/VideoBackends/D3D/D3DBase.cpp5
-rw-r--r--Source/Core/VideoBackends/D3D/D3DState.cpp2
-rw-r--r--Source/Core/VideoBackends/D3D/D3DState.h3
3 files changed, 5 insertions, 5 deletions
diff --git a/Source/Core/VideoBackends/D3D/D3DBase.cpp b/Source/Core/VideoBackends/D3D/D3DBase.cpp
index 4ab64a4784..0631ded2c0 100644
--- a/Source/Core/VideoBackends/D3D/D3DBase.cpp
+++ b/Source/Core/VideoBackends/D3D/D3DBase.cpp
@@ -156,14 +156,13 @@ bool Create(u32 adapter_index, bool enable_debug_layer)
g_Config.backend_info.bSupportsGSInstancing = shader_model_5_supported;
g_Config.backend_info.bSupportsSSAA = shader_model_5_supported;
- stateman = new StateManager();
+ stateman = std::make_unique<StateManager>();
return true;
}
void Destroy()
{
- delete stateman;
- stateman = nullptr;
+ stateman.reset();
context->ClearState();
context->Flush();
diff --git a/Source/Core/VideoBackends/D3D/D3DState.cpp b/Source/Core/VideoBackends/D3D/D3DState.cpp
index 6fc7804136..15e84f2018 100644
--- a/Source/Core/VideoBackends/D3D/D3DState.cpp
+++ b/Source/Core/VideoBackends/D3D/D3DState.cpp
@@ -20,7 +20,7 @@ namespace DX11
{
namespace D3D
{
-StateManager* stateman;
+std::unique_ptr<StateManager> stateman;
StateManager::StateManager() = default;
StateManager::~StateManager() = default;
diff --git a/Source/Core/VideoBackends/D3D/D3DState.h b/Source/Core/VideoBackends/D3D/D3DState.h
index 58af9bedee..c152907389 100644
--- a/Source/Core/VideoBackends/D3D/D3DState.h
+++ b/Source/Core/VideoBackends/D3D/D3DState.h
@@ -6,6 +6,7 @@
#include <array>
#include <cstddef>
+#include <memory>
#include <mutex>
#include <unordered_map>
@@ -296,7 +297,7 @@ private:
ID3D11ComputeShader* m_compute_shader = nullptr;
};
-extern StateManager* stateman;
+extern std::unique_ptr<StateManager> stateman;
} // namespace D3D