Style cleanup to bookmark code

This commit is contained in:
Jean-Marc Lasgouttes 2021-01-06 14:18:25 +01:00
parent 54a0b95a2b
commit 9c37cb4759
2 changed files with 9 additions and 9 deletions

View File

@ -283,7 +283,7 @@ void BookmarksSection::read(istream & is)
continue; continue;
FileName const file(fname); FileName const file(fname);
// only load valid bookmarks // only load valid bookmarks
if (file.exists() && !file.isDirectory() && idx <= max_bookmarks) if (file.exists() && !file.isDirectory() && idx < bookmarks.size())
bookmarks[idx] = Bookmark(file, pit, pos, 0, 0); bookmarks[idx] = Bookmark(file, pit, pos, 0, 0);
else else
LYXERR(Debug::INIT, "LyX: Warning: Ignore bookmark of file: " << fname); LYXERR(Debug::INIT, "LyX: Warning: Ignore bookmark of file: " << fname);
@ -297,7 +297,7 @@ void BookmarksSection::read(istream & is)
void BookmarksSection::write(ostream & os) const void BookmarksSection::write(ostream & os) const
{ {
os << '\n' << sec_bookmarks << '\n'; os << '\n' << sec_bookmarks << '\n';
for (size_t i = 0; i <= max_bookmarks; ++i) { for (size_t i = 0; i < bookmarks.size(); ++i) {
if (isValid(i)) if (isValid(i))
os << i << ", " os << i << ", "
<< bookmarks[i].bottom_pit << ", " << bookmarks[i].bottom_pit << ", "
@ -312,14 +312,14 @@ void BookmarksSection::save(FileName const & fname,
int top_id, pos_type top_pos, unsigned int idx) int top_id, pos_type top_pos, unsigned int idx)
{ {
// silently ignore bookmarks when idx is out of range // silently ignore bookmarks when idx is out of range
if (idx <= max_bookmarks) if (idx < bookmarks.size())
bookmarks[idx] = Bookmark(fname, bottom_pit, bottom_pos, top_id, top_pos); bookmarks[idx] = Bookmark(fname, bottom_pit, bottom_pos, top_id, top_pos);
} }
bool BookmarksSection::isValid(unsigned int i) const bool BookmarksSection::isValid(unsigned int i) const
{ {
return i <= max_bookmarks && !bookmarks[i].filename.empty(); return i < bookmarks.size() && !bookmarks[i].filename.empty();
} }

View File

@ -229,9 +229,8 @@ public:
typedef std::vector<Bookmark> BookmarkList; typedef std::vector<Bookmark> BookmarkList;
public: public:
/// constructor, set max_bookmarks ///
/// allow 9 regular bookmarks, bookmark 0 is temporary BookmarksSection() : bookmarks(max_bookmarks + 1) {}
BookmarksSection() : bookmarks(10), max_bookmarks(9) {}
/// Save the current position as bookmark /// Save the current position as bookmark
void save(support::FileName const & fname, pit_type bottom_pit, pos_type bottom_pos, void save(support::FileName const & fname, pit_type bottom_pit, pos_type bottom_pos,
@ -265,11 +264,12 @@ public:
private: private:
/// allow 9 regular bookmarks, bookmark 0 is temporary
unsigned int const max_bookmarks = 9;
/// a list of bookmarks /// a list of bookmarks
BookmarkList bookmarks; BookmarkList bookmarks;
///
unsigned int const max_bookmarks;
}; };