summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-01-18 14:11:11 +0000
committerEike Rathke <erack@redhat.com>2017-01-23 22:03:57 +0000
commitcb65b1fa2ac641d0cb4c589db2f4b3a4df0d6b07 (patch)
treee8275489a8eaadc0479debf3a076f2872ad873d0
parentf7e79ee29b290503f2fd866fbd8064e30e8fec73 (diff)
Resolves: tdf#105411 remove from entries before dispose
cause on dispose all the state change callbacks are called, and all of the conditional formatting code assumes that if there's an entry in the entries, that its not an empty disposed one Change-Id: I50d85128ba884a0719959f2d6e7ae83d6fb3431c (cherry picked from commit 2fb220093f7178f75ebd582bbcd956c1ee7e03db) Reviewed-on: https://gerrit.libreoffice.org/33476 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
-rw-r--r--sc/source/ui/condformat/condformatdlg.cxx5
1 files changed, 3 insertions, 2 deletions
diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx
index b6e21914f5f2..6cc1d1efa147 100644
--- a/sc/source/ui/condformat/condformatdlg.cxx
+++ b/sc/source/ui/condformat/condformatdlg.cxx
@@ -376,10 +376,11 @@ IMPL_LINK_NOARG( ScCondFormatList, RemoveBtnHdl, Button*, void )
{
for(EntryContainer::iterator itr = maEntries.begin(); itr != maEntries.end(); ++itr)
{
- if((*itr)->IsSelected())
+ auto widget = *itr;
+ if (widget->IsSelected())
{
- itr->disposeAndClear();
maEntries.erase(itr);
+ widget.disposeAndClear();
break;
}
}