From 0618863375a1fab6d1c9376f161c5305c32163c3 Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Mon, 25 May 2015 21:36:25 +0100 Subject: tdf#91577 - fix unique_ptr conversion bugs in reportdesign. Change-Id: Icc94ce266d567e7aad5afb5eacf0e85699ef4107 --- reportdesign/source/ui/report/DesignView.cxx | 10 +++++----- reportdesign/source/ui/report/ViewsWindow.cxx | 2 ++ 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'reportdesign') diff --git a/reportdesign/source/ui/report/DesignView.cxx b/reportdesign/source/ui/report/DesignView.cxx index eca7c3880ea4..9d9f0ad49fbc 100644 --- a/reportdesign/source/ui/report/DesignView.cxx +++ b/reportdesign/source/ui/report/DesignView.cxx @@ -139,26 +139,26 @@ void ODesignView::dispose() if ( m_pPropWin ) { notifySystemWindow(this,m_pPropWin,::comphelper::mem_fun(&TaskPaneList::RemoveWindow)); + m_pPropWin.disposeAndClear(); } if ( m_pAddField ) { SvtViewOptions aDlgOpt( E_WINDOW, OUString( UID_RPT_RPT_APP_VIEW ) ); aDlgOpt.SetWindowState(OStringToOUString(m_pAddField->GetWindowState(WINDOWSTATE_MASK_ALL), RTL_TEXTENCODING_ASCII_US)); notifySystemWindow(this,m_pAddField,::comphelper::mem_fun(&TaskPaneList::RemoveWindow)); + m_pAddField.disposeAndClear(); } if ( m_pReportExplorer ) { SvtViewOptions aDlgOpt(E_WINDOW, OStringToOUString(m_pReportExplorer->GetHelpId(), RTL_TEXTENCODING_UTF8)); aDlgOpt.SetWindowState(OStringToOUString(m_pReportExplorer->GetWindowState(WINDOWSTATE_MASK_ALL), RTL_TEXTENCODING_ASCII_US)); notifySystemWindow(this,m_pReportExplorer,::comphelper::mem_fun(&TaskPaneList::RemoveWindow)); + m_pReportExplorer.disposeAndClear(); } - m_aSplitWin.disposeAndClear(); + m_pTaskPane.disposeAndClear(); m_aScrollWindow.disposeAndClear(); - m_pTaskPane.clear(); - m_pReportExplorer.clear(); - m_pPropWin.clear(); - m_pAddField.clear(); + m_aSplitWin.disposeAndClear(); dbaui::ODataView::dispose(); } diff --git a/reportdesign/source/ui/report/ViewsWindow.cxx b/reportdesign/source/ui/report/ViewsWindow.cxx index 1d491d29fd82..a998935883f3 100644 --- a/reportdesign/source/ui/report/ViewsWindow.cxx +++ b/reportdesign/source/ui/report/ViewsWindow.cxx @@ -191,6 +191,8 @@ OViewsWindow::~OViewsWindow() void OViewsWindow::dispose() { m_aColorConfig.RemoveListener(this); + for (auto i = m_aSections.begin(); i != m_aSections.end(); ++i) + i->disposeAndClear(); m_aSections.clear(); m_pParent.clear(); vcl::Window::dispose(); -- cgit