summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2018-05-09 22:40:40 +1000
committerMaxime Coste <mawww@kakoune.org>2018-05-09 23:02:53 +1000
commit288cf6de739db93e3bbad673cfcc141a7db6f390 (patch)
tree8e0c44acc19a2b18b6f296452267360d6b1147f2 /src
parent3c29bf1ea6a16ec712792b7212d34697e3a9112c (diff)
Fix performance problem when generating many values for # register
Fixes #2008
Diffstat (limited to 'src')
-rw-r--r--src/main.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main.cc b/src/main.cc
index e274dc3b..d311164a 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -228,9 +228,10 @@ void register_registers()
register_manager.add_register('#', make_dyn_reg(
[](const Context& context) {
+ const size_t count = context.selections().size();
StringList res;
- res.reserve(context.selections().size());
- for (size_t i = 1; i < context.selections().size()+1; ++i)
+ res.reserve(count);
+ for (size_t i = 1; i < count+1; ++i)
res.push_back(to_string((int)i));
return res;
}));