add missing disposeAndClear pieces for VclMEdit
Also correct dispose ordering in dbaccess.
diff --git a/dbaccess/source/ui/app/AppDetailPageHelper.cxx b/dbaccess/source/ui/app/AppDetailPageHelper.cxx
index bebc01f..06c4a2a 100644
--- a/dbaccess/source/ui/app/AppDetailPageHelper.cxx
+++ b/dbaccess/source/ui/app/AppDetailPageHelper.cxx
@@ -252,13 +252,14 @@ void OAppDetailPageHelper::dispose()
m_pLists[i].disposeAndClear();
}
}
m_aFL.disposeAndClear();
m_aTBPreview.disposeAndClear();
m_aPreview.disposeAndClear();
m_aDocumentInfo.disposeAndClear();
m_pTablePreview.disposeAndClear();
m_aBorder.disposeAndClear();
m_aMenu.reset();
m_pTablePreview.disposeAndClear();
m_aDocumentInfo.disposeAndClear();
m_aPreview.disposeAndClear();
m_aBorder.disposeAndClear();
m_aTBPreview.disposeAndClear();
m_aFL.disposeAndClear();
vcl::Window::dispose();
}
diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx
index f61969f..3ab9d13a 100644
--- a/sfx2/source/view/viewfrm.cxx
+++ b/sfx2/source/view/viewfrm.cxx
@@ -1489,7 +1489,8 @@ SfxViewFrame::~SfxViewFrame()
// The Bindings delete the Frame!
KillDispatcher_Impl();
pImp->pWindow.clear();
pImp->pWindow.disposeAndClear();
pImp->pFocusWin.clear();
if ( GetFrame().GetCurrentViewFrame() == this )
GetFrame().SetCurrentViewFrame_Impl( NULL );
diff --git a/vcl/source/edit/vclmedit.cxx b/vcl/source/edit/vclmedit.cxx
index f11e404..4322248f 100644
--- a/vcl/source/edit/vclmedit.cxx
+++ b/vcl/source/edit/vclmedit.cxx
@@ -255,6 +255,11 @@ void ImpVclMEdit::InitFromStyle( WinBits nWinStyle )
ImpVclMEdit::~ImpVclMEdit()
{
EndListening( *mpTextWindow->GetTextEngine() );
mpScrollBox.disposeAndClear();
mpVScrollBar.disposeAndClear();
mpHScrollBar.disposeAndClear();
mpTextWindow.disposeAndClear();
pVclMultiLineEdit.disposeAndClear();
}
void ImpVclMEdit::ImpSetScrollBarRanges()
@@ -1153,17 +1158,17 @@ void VclMultiLineEdit::SetText( const OUString& rStr )
OUString VclMultiLineEdit::GetText() const
{
return pImpVclMEdit->GetText();
return pImpVclMEdit ? pImpVclMEdit->GetText() : OUString("");
}
OUString VclMultiLineEdit::GetText( LineEnd aSeparator ) const
{
return pImpVclMEdit->GetText( aSeparator );
return pImpVclMEdit ? pImpVclMEdit->GetText( aSeparator ) : OUString("");
}
OUString VclMultiLineEdit::GetTextLines( LineEnd aSeparator ) const
OUString VclMultiLineEdit::GetTextLines( LineEnd aSeparator ) const
{
return pImpVclMEdit->GetTextLines( aSeparator );
return pImpVclMEdit ? pImpVclMEdit->GetTextLines( aSeparator ) : OUString("");
}
void VclMultiLineEdit::Resize()