From 6d594a9cbbd385181304a93068c78e0fe303b56f Mon Sep 17 00:00:00 2001 From: David Lawrence Ramsey Date: Wed, 5 Jan 2005 21:43:43 +0000 Subject: [PATCH] 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 --- src/winio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/winio.c b/src/winio.c index df3d1791..a86f771d 100644 --- 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. */