summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlbert Cervin <albert@acervin.com>2024-02-16 09:43:43 +0100
committerAlbert Cervin <albert@acervin.com>2024-02-18 22:58:04 +0100
commita1eaf053e256c2f212819f747e6d7a9af6d4ff1b (patch)
tree914f2f1fa36fc145f2e0695cfa33594bfe759128 /src
parent1d54ca9571159ead6af0e4e3d121a39a79e13b25 (diff)
downloaddged-a1eaf053e256c2f212819f747e6d7a9af6d4ff1b.tar.gz
dged-a1eaf053e256c2f212819f747e6d7a9af6d4ff1b.tar.xz
dged-a1eaf053e256c2f212819f747e6d7a9af6d4ff1b.zip
Fix undo of deletes
Missed a boundary causing it to undo more than expected.
Diffstat (limited to 'src')
-rw-r--r--src/dged/buffer.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/dged/buffer.c b/src/dged/buffer.c
index 749dba7..d4a97fc 100644
--- a/src/dged/buffer.c
+++ b/src/dged/buffer.c
@@ -829,6 +829,9 @@ struct location buffer_delete(struct buffer *buffer, struct region region) {
text_get_region(buffer->text, region.begin.line, region.begin.col,
region.end.line, region.end.col);
+ undo_push_boundary(&buffer->undo,
+ (struct undo_boundary){.save_point = false});
+
undo_push_delete(&buffer->undo,
(struct undo_delete){.data = txt.text,
.nbytes = txt.nbytes,