nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit 9e438cdce16ed63ac10cec3a97b20950707d9d73
parent 7a1959fb11e1b233c7b383fd4e29dac9009c8de2
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   Sun, 16 Aug 2015 12:15:11 +0000

Determining the length of the current line by starting at the very
beginning of it instead of at the wrap location.


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5362 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

Diffstat:
MChangeLog | 3+++
Msrc/help.c | 2++
2 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -5,6 +5,9 @@ * src/help.c: Adjust some comments and whitespace. * src/help.c (do_help, do_help_void): Don't bother passing a function when it's used only once. + * src/help.c (help_line_len): The wrap location can be beyond the EOL, + so for determining the length of the current line, don't start at that + location but at the beginning. This fixes Savannah bug #45770. 2015-08-13 Benno Schulenberg <bensberg@justemail.net> * src/search.c (do_find_bracket): Remove mistaken comparison between diff --git a/src/help.c b/src/help.c @@ -512,6 +512,8 @@ size_t help_line_len(const char *ptr) size_t retval = (wrap_loc < 0) ? 0 : wrap_loc; size_t retval_save = retval; + retval = 0; + /* Get the length of the entire line up to a null or a newline. */ while (*(ptr + retval) != '\0' && *(ptr + retval) != '\n') retval += move_mbright(ptr + retval, 0);