forked from aniani/vim
updated for version 7.4.171
Problem: Redo does not set v:count and v:count1. Solution: Use a separate buffer for redo, so that we can set the counts when performing redo.
This commit is contained in:
@@ -471,13 +471,17 @@ struct nr_trans
|
||||
blocknr_T nt_new_bnum; /* new, positive, number */
|
||||
};
|
||||
|
||||
|
||||
typedef struct buffblock buffblock_T;
|
||||
typedef struct buffheader buffheader_T;
|
||||
|
||||
/*
|
||||
* structure used to store one block of the stuff/redo/recording buffers
|
||||
*/
|
||||
struct buffblock
|
||||
{
|
||||
struct buffblock *b_next; /* pointer to next buffblock */
|
||||
char_u b_str[1]; /* contents (actually longer) */
|
||||
buffblock_T *b_next; /* pointer to next buffblock */
|
||||
char_u b_str[1]; /* contents (actually longer) */
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -485,10 +489,10 @@ struct buffblock
|
||||
*/
|
||||
struct buffheader
|
||||
{
|
||||
struct buffblock bh_first; /* first (dummy) block of list */
|
||||
struct buffblock *bh_curr; /* buffblock for appending */
|
||||
int bh_index; /* index for reading */
|
||||
int bh_space; /* space in bh_curr for appending */
|
||||
buffblock_T bh_first; /* first (dummy) block of list */
|
||||
buffblock_T *bh_curr; /* buffblock for appending */
|
||||
int bh_index; /* index for reading */
|
||||
int bh_space; /* space in bh_curr for appending */
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -964,7 +968,8 @@ typedef struct
|
||||
int typebuf_valid; /* TRUE when save_typebuf valid */
|
||||
int old_char;
|
||||
int old_mod_mask;
|
||||
struct buffheader save_stuffbuff;
|
||||
buffheader_T save_readbuf1;
|
||||
buffheader_T save_readbuf2;
|
||||
#ifdef USE_INPUT_BUF
|
||||
char_u *save_inputbuf;
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user