diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index e1a31b1a18..3906e5f665 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -341,6 +341,7 @@ public: Impl(); AuthorList authorlist; + AuthorMap authormap; BranchList branchlist; WordLangTable spellignore; Bullet temp_bullets[4]; @@ -494,7 +495,7 @@ BufferParams::BufferParams() use_lineno = false; // map current author - author_map_[pimpl_->authorlist.get(0).bufferId()] = 0; + pimpl_->authormap[pimpl_->authorlist.get(0).bufferId()] = 0; } @@ -578,9 +579,21 @@ AuthorList const & BufferParams::authors() const } +BufferParams::AuthorMap & BufferParams::authormap() +{ + return pimpl_->authormap; +} + + +BufferParams::AuthorMap const & BufferParams::authormap() const +{ + return pimpl_->authormap; +} + + void BufferParams::addAuthor(Author const & a) { - author_map_[a.bufferId()] = pimpl_->authorlist.record(a); + pimpl_->authormap[a.bufferId()] = pimpl_->authorlist.record(a); } diff --git a/src/BufferParams.h b/src/BufferParams.h index 4444f31f2b..52abc6f229 100644 --- a/src/BufferParams.h +++ b/src/BufferParams.h @@ -494,7 +494,8 @@ public: /// map of the file's author IDs to AuthorList indexes typedef std::map AuthorMap; - AuthorMap author_map_; + AuthorMap & authormap(); + AuthorMap const & authormap() const; /// the buffer's active font encoding std::string const main_font_encoding() const; diff --git a/src/Text.cpp b/src/Text.cpp index 327e3949ee..81a76d2545 100644 --- a/src/Text.cpp +++ b/src/Text.cpp @@ -594,7 +594,7 @@ void Text::readParToken(Paragraph & par, Lexer & lex, int aid; time_t ct; is >> aid >> ct; - BufferParams::AuthorMap const & am = bp.author_map_; + BufferParams::AuthorMap & am = bp.authormap(); if (am.find(aid) == am.end()) { errorList.push_back(ErrorItem( _("Change tracking author index missing"), @@ -609,9 +609,9 @@ void Text::readParToken(Paragraph & par, Lexer & lex, bp.addAuthor(Author(aid)); } if (token == "\\change_inserted") - change = Change(Change::INSERTED, am.find(aid)->second, ct); + change = Change(Change::INSERTED, am[aid], ct); else - change = Change(Change::DELETED, am.find(aid)->second, ct); + change = Change(Change::DELETED, am[aid], ct); } else { lex.eatLine(); errorList.push_back(ErrorItem(_("Unknown token"), diff --git a/src/insets/InsetTabular.cpp b/src/insets/InsetTabular.cpp index 63d6a4eb8a..a36808fd56 100644 --- a/src/insets/InsetTabular.cpp +++ b/src/insets/InsetTabular.cpp @@ -470,7 +470,7 @@ bool getTokenValue(string const & str, char const * token, Change & change, Buff "is incomplete. I will ignore this.")); return false; } - BufferParams::AuthorMap const & am = bp.author_map_; + BufferParams::AuthorMap & am = bp.authormap(); int aid = convert(changedata[1]); if (am.find(aid) == am.end()) { // FIXME Use ErrorList @@ -488,10 +488,10 @@ bool getTokenValue(string const & str, char const * token, Change & change, Buff time_t ct; is >> ct; if (changedata[0] == "inserted") { - change = Change(Change::INSERTED, am.find(aid)->second, ct); + change = Change(Change::INSERTED, am[aid], ct); return true; } else if (changedata[0] == "deleted") { - change = Change(Change::DELETED, am.find(aid)->second, ct); + change = Change(Change::DELETED, am[aid], ct); return true; } }