diff options
| author | Lioncash <mathew1800@gmail.com> | 2015-12-30 08:52:01 -0500 |
|---|---|---|
| committer | Lioncash <mathew1800@gmail.com> | 2015-12-30 08:52:01 -0500 |
| commit | 5e17a586da5e01ac037203b45a19dc0da839e868 (patch) | |
| tree | df3d942ea9730a53d2597cad0b8c86cd31321d6b /src/video_core/video_core.cpp | |
| parent | 4bc961d5fd105f894f4f993b693b2496d14dc773 (diff) | |
video_core: Make the renderer global a unique_ptr
Diffstat (limited to 'src/video_core/video_core.cpp')
| -rw-r--r-- | src/video_core/video_core.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/video_core/video_core.cpp b/src/video_core/video_core.cpp index eaddda668..912db91a4 100644 --- a/src/video_core/video_core.cpp +++ b/src/video_core/video_core.cpp @@ -2,7 +2,10 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. +#include <memory> + #include "common/emu_window.h" +#include "common/make_unique.h" #include "common/logging/log.h" #include "core/core.h" @@ -18,8 +21,8 @@ namespace VideoCore { -EmuWindow* g_emu_window = nullptr; ///< Frontend emulator window -RendererBase* g_renderer = nullptr; ///< Renderer plugin +EmuWindow* g_emu_window = nullptr; ///< Frontend emulator window +std::unique_ptr<RendererBase> g_renderer; ///< Renderer plugin std::atomic<bool> g_hw_renderer_enabled; std::atomic<bool> g_shader_jit_enabled; @@ -29,7 +32,7 @@ void Init(EmuWindow* emu_window) { Pica::Init(); g_emu_window = emu_window; - g_renderer = new RendererOpenGL(); + g_renderer = Common::make_unique<RendererOpenGL>(); g_renderer->SetWindow(g_emu_window); g_renderer->Init(); @@ -40,7 +43,7 @@ void Init(EmuWindow* emu_window) { void Shutdown() { Pica::Shutdown(); - delete g_renderer; + g_renderer.reset(); LOG_DEBUG(Render, "shutdown OK"); } |
