diff options
Diffstat (limited to 'vcl/source/window/syschild.cxx')
-rw-r--r-- | vcl/source/window/syschild.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/vcl/source/window/syschild.cxx b/vcl/source/window/syschild.cxx index 28063ce19c63..e6f3e6013400 100644 --- a/vcl/source/window/syschild.cxx +++ b/vcl/source/window/syschild.cxx @@ -42,9 +42,9 @@ using namespace ::com::sun::star; -static void ImplSysChildProc( void* pInst, SalObjEvent nEvent ) +static void ImplSysChildProc( SystemChildWindow* pInst, SalObjEvent nEvent ) { - VclPtr<SystemChildWindow> pWindow = static_cast<SystemChildWindow*>(pInst); + VclPtr<SystemChildWindow> pWindow = pInst; switch ( nEvent ) { @@ -68,6 +68,8 @@ static void ImplSysChildProc( void* pInst, SalObjEvent nEvent ) case SalObjEvent::LoseFocus: // trigger a LoseFocus which matches the status // of the window with matching Activate-Status + if (pWindow->IsDisposed()) + break; pWindow->ImplGetFrameData()->mbSysObjFocus = false; if ( !pWindow->ImplGetFrameData()->mnFocusId ) { |