diff options
| author | Maxime Coste <mawww@kakoune.org> | 2019-07-07 09:14:25 +1000 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2019-07-07 09:14:25 +1000 |
| commit | 3a7d0b67faf65765da4629c9cc0fb49e3a90bd22 (patch) | |
| tree | 76699685136564830978f12b66d122502e63caa3 /src | |
| parent | 9e62d2c345f038234722bc12aacec17837328e54 (diff) | |
| parent | 78129150c94050d8860b3bf917b7f2186b877e84 (diff) | |
Merge remote-tracking branch 'lenormf/fix-history-size'
Diffstat (limited to 'src')
| -rw-r--r-- | src/register_manager.hh | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/register_manager.hh b/src/register_manager.hh index 796d1940..9d3ea3d9 100644 --- a/src/register_manager.hh +++ b/src/register_manager.hh @@ -85,6 +85,8 @@ class HistoryRegister : public StaticRegister public: void set(Context& context, ConstArrayView<String> values, bool restoring) override { + constexpr size_t size_limit = 100; + if (restoring) return StaticRegister::set(context, values, true); @@ -94,6 +96,10 @@ public: m_content.end()); m_content.push_back(entry); } + + const size_t current_size = m_content.size(); + if (current_size > size_limit) + m_content.erase(m_content.begin(), m_content.begin() + (current_size - size_limit)); } const String& get_main(const Context&, size_t) override |
