summaryrefslogtreecommitdiff
path: root/svx/source
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-11-18 13:44:46 +0000
committerCaolán McNamara <caolanm@redhat.com>2019-11-18 20:38:31 +0100
commit1aa0e52f70e62022cffb499a609ac2def6245166 (patch)
tree694021a25b3c8969cd11b809a7ec6a57ce219e77 /svx/source
parenta693c35634e8d44793f5f0fe91adea135e012434 (diff)
rhbz#1773525 wrong elements removed from saved entries when limit hit
Change-Id: Iaf8a012ffe927cbf38789e97b469d899e7cbf87b Reviewed-on: https://gerrit.libreoffice.org/83095 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'svx/source')
-rw-r--r--svx/source/dialog/srchdlg.cxx14
1 files changed, 7 insertions, 7 deletions
diff --git a/svx/source/dialog/srchdlg.cxx b/svx/source/dialog/srchdlg.cxx
index b971f1f94038..6b1365af8cb1 100644
--- a/svx/source/dialog/srchdlg.cxx
+++ b/svx/source/dialog/srchdlg.cxx
@@ -1578,16 +1578,16 @@ void SvxSearchDialog::Remember_Impl( const OUString &rStr, bool _bSearch )
if (std::find(pArr->begin(), pArr->end(), rStr) != pArr->end())
return;
+ pArr->insert(pArr->begin(), rStr);
+ pListBox->insert_text(0, rStr);
+
// delete oldest entry at maximum occupancy (ListBox and Array)
- if(nRememberSize < pArr->size())
+ size_t nArrSize = pArr->size();
+ if (nArrSize > nRememberSize)
{
- pListBox->remove(static_cast<sal_uInt16>(nRememberSize - 1));
- (*pArr)[nRememberSize - 1] = rStr;
- pArr->erase(pArr->begin() + nRememberSize - 1);
+ pListBox->remove(nArrSize - 1);
+ pArr->erase(pArr->begin() + nArrSize - 1);
}
-
- pArr->insert(pArr->begin(), rStr);
- pListBox->insert_text(0, rStr);
}
void SvxSearchDialog::TemplatesChanged_Impl( SfxStyleSheetBasePool& rPool )