public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in app-editors/nano/files: nano-2.1.6-cut-last.patch
@ 2008-10-19  6:56 Mike Frysinger (vapier)
  0 siblings, 0 replies; only message in thread
From: Mike Frysinger (vapier) @ 2008-10-19  6:56 UTC (permalink / raw
  To: gentoo-commits

vapier      08/10/19 06:56:40

  Added:                nano-2.1.6-cut-last.patch
  Log:
  Add fix from upstream for cutting at end of file #240330 by amadeus.bit.
  (Portage version: 2.2_rc12/cvs/Linux 2.6.26.2 x86_64)

Revision  Changes    Path
1.1                  app-editors/nano/files/nano-2.1.6-cut-last.patch

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/nano/files/nano-2.1.6-cut-last.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-editors/nano/files/nano-2.1.6-cut-last.patch?rev=1.1&content-type=text/plain

Index: nano-2.1.6-cut-last.patch
===================================================================
http://bugs.gentoo.org/240330

From a203163ac137a7b184e7e7a03ab7254e502d0775 Mon Sep 17 00:00:00 2001
From: astyanax <astyanax@35c25a1d-7b9e-4130-9fde-d3aeb78583b8>
Date: Tue, 14 Oct 2008 01:14:12 +0000
Subject: [PATCH] 2008-10-13 Chris Allegretta <chrisa@asty.org>
         * Remove CUTTOEND as an undo type as it's unneeded, fix u->to_end logic in undo struct.
         * undo.c (update_undo): Don't free cutbuffer if NULL, fix for Savannah bug #24499

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4339 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 ChangeLog  |    4 ++++
 src/cut.c  |    2 +-
 src/nano.h |    2 +-
 src/text.c |   12 +++++-------
 4 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 5f0f132..c14b724 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-10-13 Chris Allegretta <chrisa@asty.org>
+	* Remove CUTTOEND as an undo type as it's unneeded, fix u->to_end logic in undo struct.
+	* undo.c (update_undo): Don't free cutbuffer if NULL, fix for Savannah bug #24499
+
 2008-10-04 Chris Allegretta <chrisa@asty.org>
 	* cut.c (Add_undo): Save last cut undo information so it can be used for next uncut, fixes
 	  Savannah bug 24183.
diff --git a/src/cut.c b/src/cut.c
index 2689986..f92f9b3 100644
--- a/src/cut.c
+++ b/src/cut.c
@@ -245,7 +245,7 @@ void do_copy_text(void)
 void do_cut_till_end(void)
 {
 #ifndef NANO_TINY
-    add_undo(CUTTOEND);
+    add_undo(CUT);
 #endif
     do_cut_text(FALSE, TRUE, FALSE);
 }
diff --git a/src/nano.h b/src/nano.h
index c82122d..3bc10f1 100644
--- a/src/nano.h
+++ b/src/nano.h
@@ -170,7 +170,7 @@ typedef enum {
 }  function_type;
 
 typedef enum {
-    ADD, DEL, REPLACE, SPLIT, UNSPLIT, CUT, CUTTOEND, UNCUT, INSERT, OTHER
+    ADD, DEL, REPLACE, SPLIT, UNSPLIT, CUT, UNCUT, INSERT, OTHER
 } undo_type;
 
 /* Structure types. */
diff --git a/src/text.c b/src/text.c
index 97e1f19..915d1c1 100644
--- a/src/text.c
+++ b/src/text.c
@@ -408,7 +408,7 @@ void redo_cut(undo *u) {
 #ifdef DEBUG
 	    fprintf(stderr, "Undoing multi-^K cut, u->linescut = %d\n", u->linescut);
 #endif
-	    for (i = 0, t = openfile->current; i < u->linescut; i++) {
+	    for (i = 0, t = openfile->current; i < u->linescut && t->next != NULL ; i++) {
 
 #ifdef DEBUG
 	    fprintf(stderr, "Advancing, lineno  = %d, data = \"%s\"\n", t->lineno, t->data);
@@ -505,7 +505,6 @@ void do_undo(void)
 	renumber(f);
 	break;
     case CUT:
-    case CUTTOEND:
 	undidmsg = _("text cut");
         undo_cut(u);
 	break;
@@ -629,7 +628,6 @@ void do_redo(void)
 	renumber(f);
 	break;
     case CUT:
-    case CUTTOEND:
 	undidmsg = _("text cut");
 	redo_cut(u);
 	break;
@@ -890,13 +888,12 @@ void add_undo(undo_type current_action)
 	u->strdata = data;
 	break;
     case CUT:
-    case CUTTOEND:
 	u->mark_set = openfile->mark_set;
 	if (u->mark_set) {
 	    u->mark_begin_lineno = openfile->mark_begin->lineno;
 	    u->mark_begin_x = openfile->mark_begin_x;
 	}
-	u->to_end = (current_action == CUTTOEND);
+	u->to_end = (ISSET(CUT_TO_END)) ? TRUE : FALSE;
 	last_cutu = u;
 	break;
     case UNCUT:
@@ -951,7 +948,7 @@ void update_undo(undo_type action)
     /* Change to an add if we're not using the same undo struct
        that we should be using */
     if (action != fs->last_action
-	|| (action != CUT && action != CUTTOEND && action != INSERT
+	|| (action != CUT && action != INSERT
 	    && openfile->current->lineno != fs->current_undo->lineno)) {
         add_undo(action);
 	return;
@@ -1016,7 +1013,8 @@ void update_undo(undo_type action)
 #endif
 	break;
     case CUT:
-    case CUTTOEND:
+	if (!cutbuffer)
+	    break;
 	if (u->cutbuffer)
 	    free(u->cutbuffer);
 	u->cutbuffer = copy_filestruct(cutbuffer);
-- 
1.6.0.1







^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2008-10-19  6:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-19  6:56 [gentoo-commits] gentoo-x86 commit in app-editors/nano/files: nano-2.1.6-cut-last.patch Mike Frysinger (vapier)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox