vcl: add assert and improve lifecycle test.
Change-Id: Ic70a890dae41b04d6dd1f19cbea419fe5a794af3
diff --git a/vcl/qa/cppunit/lifecycle.cxx b/vcl/qa/cppunit/lifecycle.cxx
index 3492b52..dc6bbf2 100644
--- a/vcl/qa/cppunit/lifecycle.cxx
+++ b/vcl/qa/cppunit/lifecycle.cxx
@@ -90,6 +90,7 @@ void LifecycleTest::testParentedWidgets()
VclPtr<WorkWindow> xWin(new WorkWindow((vcl::Window *)NULL,
WB_APP|WB_STDWORK));
CPPUNIT_ASSERT(xWin.get() != NULL);
xWin->Show();
testWidgets(xWin);
}
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index ac250c6..101ba16 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -144,6 +144,10 @@ void Window::dispose()
assert( !mpWindowImpl->mbInDispose && "vcl::Window - already in dispose()" );
mpWindowImpl->mbInDispose = true;
assert( !mpWindowImpl->mpParent ||
!mpWindowImpl->mpParent->IsDisposed() ||
"vcl::Window child should have its parent disposed first" );
// remove Key and Mouse events issued by Application::PostKey/MouseEvent
Application::RemoveMouseAndKeyEvents( this );