From df543e78df938e2edf9a6b9e4c4cb55fd4b8829e Mon Sep 17 00:00:00 2001 From: Chris Allegretta Date: Sun, 12 Apr 2009 06:13:16 +0000 Subject: [PATCH] - Remove a debug line I left in - Fix undo line split uglyness. Still not perfect but switching work envs. git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4390 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- src/text.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/text.c b/src/text.c index 28ab0672..3b7f9a26 100644 --- a/src/text.c +++ b/src/text.c @@ -475,9 +475,8 @@ void do_undo(void) break; case SPLIT: undidmsg = _("line split"); - fprintf(stderr, "u->strdata = \"%s\"\n", u->strdata); f->data = nrealloc(f->data, strlen(f->data) + strlen(u->strdata) + 1); - strcat(f->data, u->strdata); + strcpy(&f->data[strlen(f->data) - 1], u->strdata); if (u->xflags & UNDO_SPLIT_MADENEW) { filestruct *foo = openfile->current->next; unlink_node(foo); @@ -843,6 +842,7 @@ void add_undo(undo_type current_action) fs->undotop = u; fs->current_undo = u; u->strdata = NULL; + u->strdata2 = NULL; u->cutbuffer = NULL; u->cutbottom = NULL; u->mark_set = 0; @@ -882,7 +882,10 @@ void add_undo(undo_type current_action) #endif ); u->strdata = mallocstrcpy(NULL, &openfile->current->data[wrap_loc]); - u->strdata2 = mallocstrcpy(NULL, fs->current->next->data); + /* Don't both saving the next line if we're not prepending as a new line + will be created */ + if (prepend_wrap) + u->strdata2 = mallocstrcpy(NULL, fs->current->next->data); break; case INSERT: case REPLACE: