Putting in the null byte "manually", and only when using UTF-8.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5347 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
7e1bc82d98
commit
2a5bd555e7
|
@ -1,3 +1,8 @@
|
||||||
|
2015-08-08 Benno Schulenberg <bensberg@justemail.net>
|
||||||
|
* src/winio.c (display_string): For some reason the reallocation done
|
||||||
|
by null_at() messes things up. So put in the null byte "manually".
|
||||||
|
This is a fix -- or workaround -- for Savannah bug #45718.
|
||||||
|
|
||||||
2015-08-06 Benno Schulenberg <bensberg@justemail.net>
|
2015-08-06 Benno Schulenberg <bensberg@justemail.net>
|
||||||
* src/nano.c (main): For --enable-debug builds, let malloc() help
|
* src/nano.c (main): For --enable-debug builds, let malloc() help
|
||||||
to find initialization failures and uses-after-free. Suggested by
|
to find initialization failures and uses-after-free. Suggested by
|
||||||
|
|
|
@ -1999,10 +1999,13 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool
|
||||||
char *nctrl_buf_mb = charalloc(mb_cur_max());
|
char *nctrl_buf_mb = charalloc(mb_cur_max());
|
||||||
int nctrl_buf_mb_len, i;
|
int nctrl_buf_mb_len, i;
|
||||||
|
|
||||||
|
#ifdef ENABLE_UTF8
|
||||||
/* Make sure an invalid sequence-starter byte is properly
|
/* Make sure an invalid sequence-starter byte is properly
|
||||||
* terminated, so that it doesn't pick up lingering bytes
|
* terminated, so that it doesn't pick up lingering bytes
|
||||||
* of any previous content. */
|
* of any previous content. */
|
||||||
null_at(&buf_mb, buf_mb_len);
|
if (using_utf8() && buf_mb_len == 1)
|
||||||
|
buf_mb[1] = '\0';
|
||||||
|
#endif
|
||||||
|
|
||||||
nctrl_buf_mb = mbrep(buf_mb, nctrl_buf_mb,
|
nctrl_buf_mb = mbrep(buf_mb, nctrl_buf_mb,
|
||||||
&nctrl_buf_mb_len);
|
&nctrl_buf_mb_len);
|
||||||
|
|
Loading…
Reference in New Issue