in display_string(), really avoid a memory corruption problem by
allocating enough space for COLS characters git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3021 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
a03d9c0ecd
commit
c4b854d5c7
|
@ -336,6 +336,8 @@ CVS code -
|
|||
which can be possible if there are enough tabs and the
|
||||
terminal size is sufficiently large, don't try to display it
|
||||
using control_mbrep(). (DLR, found by Duncan Geoffry Doyle)
|
||||
- Really avoid a memory corruption problem by allocating enough
|
||||
space for COLS characters. (DLR)
|
||||
edit_redraw(), edit_refresh()
|
||||
- Clean up and simplify. (DLR)
|
||||
edit_update()
|
||||
|
|
|
@ -2328,9 +2328,8 @@ char *display_string(const char *buf, size_t start_col, size_t len, bool
|
|||
|
||||
assert(column <= start_col);
|
||||
|
||||
/* Allocate enough space for the entire line, accounting for a
|
||||
* trailing multibyte character and/or tab. */
|
||||
alloc_len = (mb_cur_max() * (len + 1)) + tabsize;
|
||||
/* Allocate enough space for the entire line. */
|
||||
alloc_len = (mb_cur_max() * COLS);
|
||||
|
||||
converted = charalloc(alloc_len + 1);
|
||||
index = 0;
|
||||
|
|
Loading…
Reference in New Issue