]> git.wh0rd.org Git - nano.git/commitdiff
do_cut_text() - If the next line is empty when using -k, create a dummy line and...
authorChris Allegretta <chrisa@asty.org>
Sun, 10 Jun 2001 20:41:20 +0000 (20:41 +0000)
committerChris Allegretta <chrisa@asty.org>
Sun, 10 Jun 2001 20:41:20 +0000 (20:41 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@680 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

BUGS
ChangeLog
cut.c

diff --git a/BUGS b/BUGS
index 8e2b913a108a6e790baaca4d899d21e89a01dabc..932e140c2a70c978ca0e781e8a6fb55b9b4c301b 100644 (file)
--- a/BUGS
+++ b/BUGS
   properly (discovered by David Lawrence Ramsey) (59) [FIXED].
 - On BSD systems, marked cutting sna paste often screws up the
   last line in the cutbuffer (discovered by Barry Pederson) (60) [FIXED]
+- Blank lines are not kept when cutting with -k (discovered by Rocco)
+  (61) [FIXED].
+
 
 ** Open BUGS **
 
index e4e17585daf0cd5c6d84a0f417bc937f706c774b..05118e5a43a53e82c99821bda0a13e73063f8d7a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -50,6 +50,9 @@ Cvs code -
        - Added 'destructive' argument.  Allows the selected text to be
          added to the cutbuffer without changing the contents of the 
          file.  This allows writing selection to separate files.
+  do_cut_text()
+       - If the next line is empty when using -k, create a dummy line
+         and add it to the cutbuffer (fixes bug #61)
 - faq.html:
        - Brought the FAQ up to date, many little changes (Jordi).
 - files.c:
diff --git a/cut.c b/cut.c
index 1532e4e84c7b299010077d466f46925e1742cc66..a0466605c68e664cd12e9c34fb0f9bd89a9d06ff 100644 (file)
--- a/cut.c
+++ b/cut.c
@@ -184,6 +184,15 @@ int do_cut_text(void)
 #ifndef NANO_SMALL
     if (ISSET(CUT_TO_END) && !ISSET(MARK_ISSET)) {
        if (current_x == strlen(current->data)) {
+
+           /* If the next line is empty, create a dummy line and add it
+               to the cutbuffer */
+           if (current->next != NULL && strlen(current->next->data) == 0) {
+               filestruct *junk;
+
+               junk = copy_node(current->next);
+               add_to_cutbuffer(junk);
+           }
            do_delete();
            SET(KEEP_CUTBUFFER);
            marked_cut = 2;