From 04f65f2e173ca6ae4c0b429f75d63e2f63fde308 Mon Sep 17 00:00:00 2001 From: David Lawrence Ramsey Date: Mon, 1 Aug 2005 02:18:05 +0000 Subject: [PATCH] revert previous simplification, as it only moved complexity from one place to another, and add formatting fixes to the old code git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2957 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- ChangeLog | 2 +- src/winio.c | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3f10da68..b3f3e1e6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -274,7 +274,7 @@ CVS code - the status when we're in the file browser, since Pico doesn't. (DLR) do_cursorpos() - - Simplify, and remove unneeded assert. (DLR) + - Remove unneeded assert. (DLR) - configure.ac: - Since we only use vsnprintf() now, remove the tests for snprintf(). (DLR) diff --git a/src/winio.c b/src/winio.c index a4272256..236e5f2a 100644 --- a/src/winio.c +++ b/src/winio.c @@ -3823,6 +3823,7 @@ void display_main_list(void) * display the current cursor position next time. */ void do_cursorpos(bool constant) { + filestruct *f; char c; size_t i, cur_xpt = xplustabs() + 1; size_t cur_lenpt = strlenpt(openfile->current->data) + 1; @@ -3830,12 +3831,16 @@ void do_cursorpos(bool constant) assert(openfile->fileage != NULL && openfile->current != NULL); - i = (openfile->current->prev != NULL) ? - get_totsize(openfile->fileage, openfile->current->prev) : 0; + f = openfile->current->next; c = openfile->current->data[openfile->current_x]; + + openfile->current->next = NULL; openfile->current->data[openfile->current_x] = '\0'; - i += mbstrlen(openfile->current->data); + + i = get_totsize(openfile->fileage, openfile->current); + openfile->current->data[openfile->current_x] = c; + openfile->current->next = f; /* Check whether totsize is correct. If it isn't, there is a bug * somewhere. */