summaryrefslogtreecommitdiff
path: root/cui/source
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2016-11-25 17:29:09 +0100
committerStephan Bergmann <sbergman@redhat.com>2016-11-27 22:06:36 +0000
commit5db3eff8bea4b4d907251c46bc30d1114daba3bc (patch)
treecb9048ef95ebe7114292ae4d30ffb0dc43318099 /cui/source
parent065b4d6813ee308f819cce962da8944021b945c6 (diff)
Handle cases where last-used palette disappeared
...so PaletteManager::SetPalette(LISTBOX_ENTRY_NOTFOUND) would set PaletteManager::mnCurrentPalette to 65535, and PaletteManager::GetSelectedPalettePath would do out-of-bounds access into PaletteManage::m_Palettes. That the last-used palette (as stored under in the configuration under /org.openoffice.Office.Common/UserColors/PaletteName) may become more common with pending changes like <https://gerrit.libreoffice.org/#/c/31199/> "tdf#104047 Remove dispensable palettes". Change-Id: I5641bae04f50fea8aa69027a75de08c22394c281 (cherry picked from commit 8b718e3774f1ffb69f9aad565216556c798e95f4) Reviewed-on: https://gerrit.libreoffice.org/31209 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'cui/source')
-rw-r--r--cui/source/tabpages/tpcolor.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/cui/source/tabpages/tpcolor.cxx b/cui/source/tabpages/tpcolor.cxx
index c31f57fce3f8..e4545b497d6e 100644
--- a/cui/source/tabpages/tpcolor.cxx
+++ b/cui/source/tabpages/tpcolor.cxx
@@ -220,7 +220,10 @@ void SvxColorTabPage::FillPaletteLB()
}
OUString aPaletteName( officecfg::Office::Common::UserColors::PaletteName::get() );
m_pSelectPalette->SelectEntry(aPaletteName);
- SelectPaletteLBHdl( *m_pSelectPalette );
+ if (m_pSelectPalette->GetSelectEntryPos() != LISTBOX_ENTRY_NOTFOUND)
+ {
+ SelectPaletteLBHdl( *m_pSelectPalette );
+ }
}
void SvxColorTabPage::Construct()
@@ -228,7 +231,6 @@ void SvxColorTabPage::Construct()
if (pColorList.is())
{
FillPaletteLB();
- SelectPaletteLBHdl( *m_pSelectPalette );
ImpColorCountChanged();
}
}