summaryrefslogtreecommitdiff
path: root/src/main/cmds.c
diff options
context:
space:
mode:
authorAlbert Cervin <albert@acervin.com>2025-11-05 23:16:02 +0100
committerAlbert Cervin <albert@acervin.com>2025-11-05 23:16:02 +0100
commit7f0bd82cfaff98072bd49db6e6308579d013f523 (patch)
treeb8cd1aa4a8209eb698b755980ae101077a5d0722 /src/main/cmds.c
parent2fa2d749e675cc95ad5c6e866d3257639b136df8 (diff)
downloaddged-7f0bd82cfaff98072bd49db6e6308579d013f523.tar.gz
dged-7f0bd82cfaff98072bd49db6e6308579d013f523.tar.xz
dged-7f0bd82cfaff98072bd49db6e6308579d013f523.zip
Fix a crash when undoing
We were spawning too many completion requests as part of the text being changed.
Diffstat (limited to 'src/main/cmds.c')
-rw-r--r--src/main/cmds.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/main/cmds.c b/src/main/cmds.c
index fa3ceaa..6505e01 100644
--- a/src/main/cmds.c
+++ b/src/main/cmds.c
@@ -619,9 +619,17 @@ BUFFER_VIEW_WRAPCMD(paste)
BUFFER_VIEW_WRAPCMD(paste_older)
BUFFER_VIEW_WRAPCMD(goto_beginning)
BUFFER_VIEW_WRAPCMD(goto_end)
-BUFFER_VIEW_WRAPCMD(undo)
BUFFER_VIEW_WRAPCMD(sort_lines)
+static int32_t undo_cmd(struct command_ctx ctx, int argc, const char *argv[]) {
+ (void)argc;
+ (void)argv;
+ pause_completion();
+ buffer_view_undo(window_buffer_view(ctx.active_window));
+ resume_completion();
+ return 0;
+}
+
static int32_t scroll_up_cmd(struct command_ctx ctx, int argc,
const char *argv[]) {
(void)argc;