From 80ea9c5de93cba3cfc814a0740f5374bf9a54a10 Mon Sep 17 00:00:00 2001
From: Chris Allegretta <chrisa@asty.org>
Date: Sat, 9 Aug 2008 10:08:33 +0000
Subject: [PATCH]         * text.c (add_undo): Fix check for multi-line cut
 check skips adding other new legit events.

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4300 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 ChangeLog  | 1 +
 src/text.c | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 0b055bc9..2ebe5a45 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
 	* files.c (write_file): Do not go on and attempt to write the main file if writing the backup file failed,
 	  related to Savannah bug 24000.
 	* text.c (do_redo): Fix improperly restoring the text when redoing a line split.
+        * text.c (add_undo): Fix check for multi-line cut check skips adding other new legit events.
 
 2008-07-23 Chris Allegretta <chrisa@asty.org>
 	* text.c: Reset openfile-> to OTHER after an undo or redo so we don't mistakenly
diff --git a/src/text.c b/src/text.c
index 041e58f9..f4892c35 100644
--- a/src/text.c
+++ b/src/text.c
@@ -806,7 +806,8 @@ void add_undo(undo_type current_action)
     /* Ugh, if we were called while cutting not-to-end, non-marked and on the same lineno,
        we need to  abort here */
     u = fs->current_undo;
-    if (u && u->type == CUT && !u->mark_set && u->lineno == fs->current->lineno)
+    if (current_action == CUT && u && u->type == CUT 
+	&& !u->mark_set && u->lineno == fs->current->lineno)
 	return;
 
     /* Blow away the old undo stack if we are starting from the middle */
-- 
GitLab