cui/source/customize/eventdlg.cxx | 12 ++++++++++++ cui/source/customize/macropg.cxx | 10 ---------- 2 files changed, 12 insertions(+), 10 deletions(-)
New commits: commit 4ca5536f008d1503a9c9fa8b65150baeb92e4b4c Author: Kohei Yoshida <kohei.yosh...@collabora.com> Date: Thu Jan 30 20:16:12 2014 -0500 fdo#74252: Fix crash on exit with the customize dialog. pEventLB gets accessed after it's been deleted. Moving the code that accesses it to before it gets deleted fixes the crash. Change-Id: If559fe3ea7dd76a3394d0aa7c18c9329188aa17f diff --git a/cui/source/customize/eventdlg.cxx b/cui/source/customize/eventdlg.cxx index 02888d3..dd61fc2 100644 --- a/cui/source/customize/eventdlg.cxx +++ b/cui/source/customize/eventdlg.cxx @@ -39,6 +39,7 @@ #include <sfx2/docfac.hxx> #include <sfx2/fcontnr.hxx> #include <unotools/eventcfg.hxx> +#include <svtools/treelistentry.hxx> #include "headertablistbox.hxx" #include "macropg_impl.hxx" @@ -108,7 +109,18 @@ void SvxEventConfigPage::LateInit( const uno::Reference< frame::XFrame >& _rxFra SvxEventConfigPage::~SvxEventConfigPage() { + // need to delete the user data + SvHeaderTabListBox& rListBox = mpImpl->pEventLB->GetListBox(); + SvTreeListEntry* pE = rListBox.GetEntry( 0 ); + while( pE ) + { + OUString* pEventName = (OUString*)pE->GetUserData(); + delete pEventName; + pE->SetUserData((void*)0); + pE = rListBox.NextSibling( pE ); + } delete mpImpl->pEventLB; + delete mpImpl->pAssignFT; delete mpImpl->pAssignPB; delete mpImpl->pDeletePB; diff --git a/cui/source/customize/macropg.cxx b/cui/source/customize/macropg.cxx index 99b962f..9f0fe1d 100644 --- a/cui/source/customize/macropg.cxx +++ b/cui/source/customize/macropg.cxx @@ -250,16 +250,6 @@ _SvxMacroTabPage::_SvxMacroTabPage(Window* pParent, const OString& rID, _SvxMacroTabPage::~_SvxMacroTabPage() { - // need to delete the user data - SvHeaderTabListBox& rListBox = mpImpl->pEventLB->GetListBox(); - SvTreeListEntry* pE = rListBox.GetEntry( 0 ); - while( pE ) - { - OUString* pEventName = (OUString*)pE->GetUserData(); - delete pEventName; - pE->SetUserData((void*)0); - pE = rListBox.NextSibling( pE ); - } DELETEZ( mpImpl ); } // ----------------------------------------------------------------------------- _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits