summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sw/source/ui/misc/bookmark.cxx14
1 files changed, 9 insertions, 5 deletions
diff --git a/sw/source/ui/misc/bookmark.cxx b/sw/source/ui/misc/bookmark.cxx
index b932883359db..fdf0262f2307 100644
--- a/sw/source/ui/misc/bookmark.cxx
+++ b/sw/source/ui/misc/bookmark.cxx
@@ -249,15 +249,18 @@ bool SwInsertBookmarkDlg::HaveBookmarksChanged()
if (pMarkAccess->getBookmarksCount() != m_nLastBookmarksCount)
return true;
- IDocumentMarkAccess::const_iterator_t ppBookmark = pMarkAccess->getBookmarksBegin();
- for (std::pair<sw::mark::IMark*,OUString> & aTableBookmark : aTableBookmarks)
+ std::vector<std::pair<sw::mark::IMark*, OUString>>::const_iterator aListIter = aTableBookmarks.begin();
+ for (IDocumentMarkAccess::const_iterator_t ppBookmark = pMarkAccess->getBookmarksBegin();
+ ppBookmark != pMarkAccess->getBookmarksEnd(); ++ppBookmark)
{
if (IDocumentMarkAccess::MarkType::BOOKMARK == IDocumentMarkAccess::GetType(**ppBookmark))
{
- if (aTableBookmark.first != ppBookmark->get() ||
- aTableBookmark.second != ppBookmark->get()->GetName())
+ if (aListIter == aTableBookmarks.end())
return true;
- ++ppBookmark;
+ if (aListIter->first != ppBookmark->get() ||
+ aListIter->second != ppBookmark->get()->GetName())
+ return true;
+ ++aListIter;
}
}
return false;
@@ -267,6 +270,7 @@ void SwInsertBookmarkDlg::PopulateTable()
{
aTableBookmarks.clear();
m_pBookmarksBox->Clear();
+
IDocumentMarkAccess* const pMarkAccess = rSh.getIDocumentMarkAccess();
for (IDocumentMarkAccess::const_iterator_t ppBookmark = pMarkAccess->getBookmarksBegin();
ppBookmark != pMarkAccess->getBookmarksEnd(); ++ppBookmark)