diff options
author | 2015-08-10 21:56:26 -0700 | |
---|---|---|
committer | 2015-08-10 21:56:26 -0700 | |
commit | 9b0c6dbd54c900f12d094500d58569b10ebc6954 (patch) | |
tree | de2bad52db7f603c62f7fd1873633e9b9b9b3f22 /src | |
parent | f3a7c23a314be9ed321b6a824fa9bf3d37024180 (diff) |
debugviewinfo.c: destroy window before destroying view (nw)
destroying the focus window triggers a killfocus event. for
cursor-supporting windows, this accesses the just-deleted view data, and
then crashes
Diffstat (limited to 'src')
-rw-r--r-- | src/osd/modules/debugger/win/debugviewinfo.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/osd/modules/debugger/win/debugviewinfo.c b/src/osd/modules/debugger/win/debugviewinfo.c index f3c12a09f2e..b4868800692 100644 --- a/src/osd/modules/debugger/win/debugviewinfo.c +++ b/src/osd/modules/debugger/win/debugviewinfo.c @@ -68,9 +68,6 @@ debugview_info::debugview_info(debugger_windows_interface &debugger, debugwin_in return; cleanup: - if (m_view != NULL) - machine().debug_view().free_view(*m_view); - m_view = NULL; if (m_hscroll != NULL) DestroyWindow(m_hscroll); m_hscroll = NULL; @@ -80,15 +77,18 @@ cleanup: if (m_wnd != NULL) DestroyWindow(m_wnd); m_wnd = NULL; + if (m_view != NULL) + machine().debug_view().free_view(*m_view); + m_view = NULL; } debugview_info::~debugview_info() { - if (m_view) - machine().debug_view().free_view(*m_view); if (m_wnd != NULL) DestroyWindow(m_wnd); + if (m_view) + machine().debug_view().free_view(*m_view); } |