diff options
Diffstat (limited to 'vcl/source/window/syschild.cxx')
-rw-r--r-- | vcl/source/window/syschild.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/vcl/source/window/syschild.cxx b/vcl/source/window/syschild.cxx index f82e274d3c12..618170994105 100644 --- a/vcl/source/window/syschild.cxx +++ b/vcl/source/window/syschild.cxx @@ -133,12 +133,18 @@ SystemChildWindow::SystemChildWindow( vcl::Window* pParent, WinBits nStyle, Syst SystemChildWindow::~SystemChildWindow() { + disposeOnce(); +} + +void SystemChildWindow::dispose() +{ Hide(); - if ( mpWindowImpl->mpSysObj ) + if ( mpWindowImpl && mpWindowImpl->mpSysObj ) { ImplGetSVData()->mpDefInst->DestroyObject( mpWindowImpl->mpSysObj ); mpWindowImpl->mpSysObj = NULL; } + Window::dispose(); } const SystemEnvData* SystemChildWindow::GetSystemData() const |