mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
patch 9.0.1521: failing redo of command with control characters
Problem: Failing redo of command with control characters. Solution: Use AppendToRedobuffLit() for colon commands. (closes #12354)
This commit is contained in:
@@ -43,8 +43,8 @@ static buffheader_T recordbuff = {{NULL, {NUL}}, NULL, 0, 0};
|
||||
static int typeahead_char = 0; // typeahead char that's not flushed
|
||||
|
||||
/*
|
||||
* when block_redo is TRUE redo buffer will not be changed
|
||||
* used by edit() to repeat insertions and 'V' command for redoing
|
||||
* When block_redo is TRUE the redo buffer will not be changed.
|
||||
* Used by edit() to repeat insertions.
|
||||
*/
|
||||
static int block_redo = FALSE;
|
||||
|
||||
@@ -609,11 +609,14 @@ AppendToRedobuffLit(
|
||||
void
|
||||
AppendToRedobuffSpec(char_u *s)
|
||||
{
|
||||
if (block_redo)
|
||||
return;
|
||||
|
||||
while (*s != NUL)
|
||||
{
|
||||
if (*s == K_SPECIAL && s[1] != NUL && s[2] != NUL)
|
||||
{
|
||||
// insert special key literally
|
||||
// Insert special key literally.
|
||||
add_buff(&redobuff, s, 3L);
|
||||
s += 3;
|
||||
}
|
||||
|
Reference in New Issue
Block a user