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
diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx
index b6e2191..6cc1d1e 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;
}
}