From 53994092de00f0f705c56ae24ef813c01474cae1 Mon Sep 17 00:00:00 2001 From: "therealmogminer@gmail.com" Date: Mon, 22 Feb 2016 17:30:21 +0100 Subject: Fix D3D and BGFX fullscreen toggle issues, nw --- src/osd/sdl/window.cpp | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) (limited to 'src/osd/sdl/window.cpp') diff --git a/src/osd/sdl/window.cpp b/src/osd/sdl/window.cpp index 49e8ed48477..eed3a9afd67 100644 --- a/src/osd/sdl/window.cpp +++ b/src/osd/sdl/window.cpp @@ -351,6 +351,26 @@ void sdl_osd_interface::window_exit() global_free(temp); } + switch(video_config.mode) + { + case VIDEO_MODE_SDL2ACCEL: + renderer_sdl2::exit(); + break; + case VIDEO_MODE_SOFT: + renderer_sdl1::exit(); + break; + case VIDEO_MODE_BGFX: + renderer_bgfx::exit(); + break; +#if (USE_OPENGL) + case VIDEO_MODE_OPENGL: + renderer_ogl::exit(); + break; +#endif + default: + break; + } + // if we're multithreaded, clean up the window thread if (multithreading_enabled) { @@ -541,8 +561,11 @@ OSDWORK_CALLBACK( sdl_window_info::sdlwindow_toggle_full_screen_wt ) window->m_windowed_dim = window->get_size(); } - delete window->m_renderer; - window->m_renderer = nullptr; + if (window->m_renderer != nullptr) + { + delete window->m_renderer; + window->m_renderer = nullptr; + } bool is_osx = false; #ifdef SDLMAME_MACOSX -- cgit v1.2.3-70-g09d2