From ed4e373546857a03a11cb36f7a10aed4672f70ab Mon Sep 17 00:00:00 2001 From: hap Date: Sun, 21 Jun 2020 20:09:59 +0200 Subject: drawd3d: properly clean up d3dintf (nw) --- src/osd/modules/render/drawd3d.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/osd/modules/render/drawd3d.cpp b/src/osd/modules/render/drawd3d.cpp index dab45177225..df1e31a0c25 100644 --- a/src/osd/modules/render/drawd3d.cpp +++ b/src/osd/modules/render/drawd3d.cpp @@ -209,6 +209,7 @@ bool renderer_d3d9::init(running_machine &machine) d3d9_create_fn d3d9_create_ptr = d3dintf->d3d9_dll->bind("Direct3DCreate9"); if (d3d9_create_ptr == nullptr) { + global_free(d3dintf); osd_printf_verbose("Direct3D: Unable to find Direct3D 9 runtime library\n"); return true; } @@ -216,6 +217,7 @@ bool renderer_d3d9::init(running_machine &machine) d3dintf->d3dobj = (*d3d9_create_ptr)(D3D_SDK_VERSION); if (d3dintf->d3dobj == nullptr) { + global_free(d3dintf); osd_printf_verbose("Direct3D: Unable to initialize Direct3D 9\n"); return true; } @@ -971,6 +973,7 @@ void renderer_d3d9::exit() { d3dintf->d3dobj->Release(); global_free(d3dintf); + d3dintf = nullptr; } } -- cgit v1.2.3