nano

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

commit 6d594a9cbbd385181304a93068c78e0fe303b56f
parent 9ac20c85b079f3dc834558e9cf0cd373c9649d56
Author: David Lawrence Ramsey <pooka109@gmail.com>
Date:   Wed,  5 Jan 2005 21:43:43 +0000

really fix the memory corruption problem in display_string()


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

Diffstat:
Msrc/winio.c | 4++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/winio.c b/src/winio.c @@ -2340,7 +2340,7 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool #endif } - while (index < alloc_len && buf[start_index] != '\0') { + while (index < alloc_len - 1 && buf[start_index] != '\0') { int wide_buf, wide_buf_len; #ifdef NANO_WIDE bool bad_char; @@ -2449,7 +2449,7 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool start_index += wide_buf_len; } - if (index < alloc_len) + if (index < alloc_len - 1) converted[index] = '\0'; /* Make sure converted takes up no more than len columns. */