vi: using array data after it fell out of scope is stupid.
This commit is contained in:
parent
7354244c4a
commit
7b54dc788c
14
editors/vi.c
14
editors/vi.c
@ -2492,6 +2492,14 @@ static int file_write(char *fn, char *first, char *last)
|
|||||||
static void place_cursor(int row, int col, int optimize)
|
static void place_cursor(int row, int col, int optimize)
|
||||||
{
|
{
|
||||||
char cm1[sizeof(CMrc) + sizeof(int)*3 * 2];
|
char cm1[sizeof(CMrc) + sizeof(int)*3 * 2];
|
||||||
|
#if ENABLE_FEATURE_VI_OPTIMIZE_CURSOR
|
||||||
|
enum {
|
||||||
|
SZ_UP = sizeof(CMup),
|
||||||
|
SZ_DN = sizeof(CMdown),
|
||||||
|
SEQ_SIZE = SZ_UP > SZ_DN ? SZ_UP : SZ_DN,
|
||||||
|
};
|
||||||
|
char cm2[SEQ_SIZE * 5 + 32]; // bigger than worst case size
|
||||||
|
#endif
|
||||||
char *cm;
|
char *cm;
|
||||||
|
|
||||||
if (row < 0) row = 0;
|
if (row < 0) row = 0;
|
||||||
@ -2505,12 +2513,6 @@ static void place_cursor(int row, int col, int optimize)
|
|||||||
|
|
||||||
#if ENABLE_FEATURE_VI_OPTIMIZE_CURSOR
|
#if ENABLE_FEATURE_VI_OPTIMIZE_CURSOR
|
||||||
if (optimize && col < 16) {
|
if (optimize && col < 16) {
|
||||||
enum {
|
|
||||||
SZ_UP = sizeof(CMup),
|
|
||||||
SZ_DN = sizeof(CMdown),
|
|
||||||
SEQ_SIZE = SZ_UP > SZ_DN ? SZ_UP : SZ_DN,
|
|
||||||
};
|
|
||||||
char cm2[SEQ_SIZE * 5 + 32]; // bigger than worst case size
|
|
||||||
char *screenp;
|
char *screenp;
|
||||||
int Rrow = last_row;
|
int Rrow = last_row;
|
||||||
int diff = Rrow - row;
|
int diff = Rrow - row;
|
||||||
|
Loading…
Reference in New Issue
Block a user