summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJavier Fernandez <jfernandez@igalia.com>2013-06-06 09:14:49 +0000
committerMichael Meeks <michael.meeks@suse.com>2013-07-30 07:54:14 +0000
commit9b1d8d864b813ebf943b85b129335d7d55e35c41 (patch)
tree25a492de39c929c5ba14d8f8d236c7d2b782babc
parent75ad317118aeb4cd875127d3918e5c912f56fbca (diff)
fdo#67361 Prevent out-of-range values coming from ListBox GetSelectEntryPos.
Applied to master (LibreOffice 4.2.0.alpha) as: Change-Id: Ia787c412408ef53db3c8458f54c7843c669c81ad Reviewed-on: https://gerrit.libreoffice.org/4174 Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu> Tested-by: Lionel Elie Mamane <lionel@mamane.lu> (without the fdo#67361 reference) Squash with subsequent fixups: 1) -Werror=sign-compare (ListBox::GetSelectEntryPos returns sal_uInt16) Change-Id: Ia6e4bf4354523f5112ee3ade1d3da6db0f9ab2c4 2) Fix previous fix Change-Id: I2d7ea38b743d78327fd19886019c1106bc1316d6 Also fix discrepancy between log-areas.dox and SAL_WARN argument. Change-Id: I03fc1014da0be8335689954725ac605e32fbbee8 Reviewed-on: https://gerrit.libreoffice.org/5176 Reviewed-by: Tomáš Chvátal <tchvatal@suse.cz> Tested-by: Tomáš Chvátal <tchvatal@suse.cz> Reviewed-by: Michael Meeks <michael.meeks@suse.com> Tested-by: Michael Meeks <michael.meeks@suse.com>
-rw-r--r--dbaccess/source/ui/dlg/generalpage.cxx7
-rw-r--r--include/sal/log-areas.dox1
2 files changed, 7 insertions, 1 deletions
diff --git a/dbaccess/source/ui/dlg/generalpage.cxx b/dbaccess/source/ui/dlg/generalpage.cxx
index 3eea60ae223c..6a79acf0c510 100644
--- a/dbaccess/source/ui/dlg/generalpage.cxx
+++ b/dbaccess/source/ui/dlg/generalpage.cxx
@@ -328,7 +328,12 @@ namespace dbaui
IMPL_LINK( OGeneralPage, OnDatasourceTypeSelected, ListBox*, _pBox )
{
// get the type from the entry data
- sal_Int16 nSelected = _pBox->GetSelectEntryPos();
+ sal_uInt16 nSelected = _pBox->GetSelectEntryPos();
+ if (nSelected >= m_aURLPrefixes.size() )
+ {
+ SAL_WARN("dbaccess.ui.OGeneralPage", "Got out-of-range value '" << nSelected << "' from the DatasourceType selection ListBox's GetSelectEntryPos(): no corresponding URL prefix");
+ return 0L;
+ }
const OUString sURLPrefix = m_aURLPrefixes[ nSelected ];
setParentTitle( sURLPrefix );
diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox
index bee62d6a55a5..e04e87745bcc 100644
--- a/include/sal/log-areas.dox
+++ b/include/sal/log-areas.dox
@@ -332,6 +332,7 @@ certain functionality.
@li @c dbaccess
@li @c dbaccess.ui
+@li @c dbaccess.ui.OGeneralPage
@section svx