From 4e665715b9645a4c381f66f01c2cf5f93f97aabc Mon Sep 17 00:00:00 2001 From: Karl Heuer Date: Thu, 3 Mar 1994 20:12:01 +0000 Subject: [PATCH] (record_delete): Save last_point_position in the undo record, rather than the current value of point. --- src/undo.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/undo.c b/src/undo.c index a0e9f84f7c9..64f773d62c8 100644 --- a/src/undo.c +++ b/src/undo.c @@ -22,6 +22,7 @@ and this notice must be preserved on all copies. */ #include #include "lisp.h" #include "buffer.h" +#include "commands.h" /* Last buffer for which undo information was recorded. */ Lisp_Object last_undo_buffer; @@ -95,10 +96,10 @@ record_delete (beg, length) XFASTINT (lbeg) = beg; XFASTINT (lend) = beg + length; - /* If point isn't at start of deleted range, record where it is. */ - if (PT != XFASTINT (sbeg)) + /* If point wasn't at start of deleted range, record where it was. */ + if (last_point_position != XFASTINT (sbeg)) current_buffer->undo_list - = Fcons (make_number (PT), current_buffer->undo_list); + = Fcons (make_number (last_point_position), current_buffer->undo_list); current_buffer->undo_list = Fcons (Fcons (Fbuffer_substring (lbeg, lend), sbeg), -- 2.39.5