0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

patch 7.4.2362

Problem:    Illegal memory access with ":1@". (Dominique Pelle)
Solution:   Correct cursor column after setting the line number.  Also avoid
            calling end_visual_mode() when not in Visual mode.
This commit is contained in:
Bram Moolenaar 2016-09-11 14:39:53 +02:00
parent ee39ef0b93
commit 4930a76a03
3 changed files with 5 additions and 2 deletions

View File

@ -580,7 +580,7 @@ aucmd_abort:
/* When closing the current buffer stop Visual mode before freeing /* When closing the current buffer stop Visual mode before freeing
* anything. */ * anything. */
if (buf == curbuf if (buf == curbuf && VIsual_active
#if defined(EXITFREE) #if defined(EXITFREE)
&& !entered_free_all_mem && !entered_free_all_mem
#endif #endif
@ -1389,7 +1389,7 @@ do_buffer(
} }
/* When closing the current buffer stop Visual mode. */ /* When closing the current buffer stop Visual mode. */
if (buf == curbuf) if (buf == curbuf && VIsual_active)
end_visual_mode(); end_visual_mode();
/* /*

View File

@ -9388,6 +9388,7 @@ ex_at(exarg_T *eap)
int prev_len = typebuf.tb_len; int prev_len = typebuf.tb_len;
curwin->w_cursor.lnum = eap->line2; curwin->w_cursor.lnum = eap->line2;
check_cursor_col();
#ifdef USE_ON_FLY_SCROLL #ifdef USE_ON_FLY_SCROLL
dont_scroll = TRUE; /* disallow scrolling here */ dont_scroll = TRUE; /* disallow scrolling here */

View File

@ -763,6 +763,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
2362,
/**/ /**/
2361, 2361,
/**/ /**/