aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2025-03-08 08:02:50 +0800
committerGitHub <noreply@github.com>2025-03-08 08:02:50 +0800
commitb8ddd3b6bbfb7c2186be546a491b31b0db30b6b3 (patch)
tree23506606ecf5d0e4855fd5d386fb4c1ce8f089a4
parentf05a6666cfcb2cd95d860620748cb0fa58b23aba (diff)
downloadrneovim-b8ddd3b6bbfb7c2186be546a491b31b0db30b6b3.tar.gz
rneovim-b8ddd3b6bbfb7c2186be546a491b31b0db30b6b3.tar.bz2
rneovim-b8ddd3b6bbfb7c2186be546a491b31b0db30b6b3.zip
perf(events): remove unnecessary loop in event_nr2name() (#32777)
It's no longer needed after #32152. I'll not apply this change to Vim first, because Nvim's event name aliases are a bit different from Vim. After this change there is a small speedup in nvim_exec_autocmds as per test/benchmark/autocmd_spec.lua.
-rw-r--r--src/nvim/autocmd.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/nvim/autocmd.c b/src/nvim/autocmd.c
index 34ad734528..51d952ed3e 100644
--- a/src/nvim/autocmd.c
+++ b/src/nvim/autocmd.c
@@ -658,12 +658,7 @@ event_T event_name2nr_str(String str)
const char *event_nr2name(event_T event)
FUNC_ATTR_NONNULL_RET FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_CONST
{
- for (int i = 0; event_names[i].name != NULL; i++) {
- if ((event_T)abs(event_names[i].event) == event) {
- return event_names[i].name;
- }
- }
- return "Unknown";
+ return event >= 0 && event < NUM_EVENTS ? event_names[event].name : "Unknown";
}
/// Return true if "event" is included in 'eventignore(win)'.