From: David Lawrence Ramsey Date: Sun, 31 Jul 2005 18:51:51 +0000 (+0000) Subject: simplify do_cursorpos(), and remove an unneeded assert from it X-Git-Tag: v1.3.9~93 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=4ab80154e9e69bc8beded06383a916f03b011e43;p=nano.git simplify do_cursorpos(), and remove an unneeded assert from it git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2953 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/ChangeLog b/ChangeLog index d41657ee..3f10da68 100644 --- a/ChangeLog +++ b/ChangeLog @@ -273,6 +273,8 @@ CVS code - that there's more room for other things, and to not display the status when we're in the file browser, since Pico doesn't. (DLR) + do_cursorpos() + - Simplify, and 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 66e65f20..58b027df 100644 --- a/src/winio.c +++ b/src/winio.c @@ -3823,25 +3823,19 @@ void display_main_list(void) * display the current cursor position next time. */ void do_cursorpos(bool constant) { - char c; - filestruct *f; - size_t i, cur_xpt = xplustabs() + 1; + size_t i = 0, cur_xpt = xplustabs() + 1; size_t cur_lenpt = strlenpt(openfile->current->data) + 1; int linepct, colpct, charpct; - assert(openfile->current != NULL && openfile->fileage != NULL); + assert(openfile->fileage != NULL && openfile->current != NULL); - c = openfile->current->data[openfile->current_x]; - f = openfile->current->next; - openfile->current->data[openfile->current_x] = '\0'; - openfile->current->next = NULL; - i = get_totsize(openfile->fileage, openfile->current); - openfile->current->data[openfile->current_x] = c; - openfile->current->next = f; + if (openfile->current->prev != NULL) + i += get_totsize(openfile->fileage, openfile->current->prev); + i += mbstrnlen(openfile->current->data, openfile->current_x); /* Check whether totsize is correct. If it isn't, there is a bug * somewhere. */ - assert(openfile->current != openfile->filebot || i == openfile->totsize); + assert(i == openfile->totsize); if (constant && disable_cursorpos) { disable_cursorpos = FALSE;