From dc2ca8871890cf9b6b28b040226ee67982301edf Mon Sep 17 00:00:00 2001
From: Chris Allegretta <chrisa@asty.org>
Date: Tue, 2 Oct 2001 23:55:09 +0000
Subject: [PATCH] - cut.c:do_cut_text() - Don't recenter the line when cutting
 one line (DLR)

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@818 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 ChangeLog | 2 ++
 cut.c     | 8 ++++++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 26042c18..def8f386 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -34,6 +34,8 @@ CVS code -
   cut_marked_segment()
 	- Add magic line when cutting a selection including filebot
 	  (discovered by DLR, fixed by DLR & Chris)
+  do_cut_text()
+	- Don't recenter the line when cutting one line (DLR).
 - files.c:
   do_writeout()
 	- Expanded strings to not use %s and ?: to determine
diff --git a/cut.c b/cut.c
index d69afd30..34ea94dc 100644
--- a/cut.c
+++ b/cut.c
@@ -194,6 +194,7 @@ int do_cut_text(void)
 {
     filestruct *tmp, *fileptr = current;
 #ifndef NANO_SMALL
+    int cuttingpartialline = 0;
     int cuttingtoend = 0;
 #endif
 
@@ -252,9 +253,12 @@ int do_cut_text(void)
 	}
     }
     if (ISSET(MARK_ISSET)) {
-	if (current->lineno <= mark_beginbuf->lineno)
+	if (current->lineno <= mark_beginbuf->lineno) {
+	    if (current->lineno == mark_beginbuf->lineno)
+		cuttingpartialline = 1;
 	    cut_marked_segment(current, current_x, mark_beginbuf,
 			       mark_beginx, 1);
+	}
 	else
 	    cut_marked_segment(mark_beginbuf, mark_beginx, current,
 			       current_x, 1);
@@ -264,7 +268,7 @@ int do_cut_text(void)
 
 	marked_cut = 1;
 	set_modified();
-	if (cuttingtoend)
+	if (cuttingpartialline || cuttingtoend)
 	    edit_refresh();
 	else
 	    edit_update(current, CENTER);
-- 
GitLab