diff options
Diffstat (limited to 'src/nvim/ops.c')
-rw-r--r-- | src/nvim/ops.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/nvim/ops.c b/src/nvim/ops.c index 889cc4f5bc..fe1496e2d4 100644 --- a/src/nvim/ops.c +++ b/src/nvim/ops.c @@ -995,6 +995,10 @@ yankreg_T *get_yank_register(int regname, int mode) && (regname == 0 || regname == '"' || regname == '*' || regname == '+') && y_previous != NULL) { // in case clipboard not available, paste from previous used register + if (get_userreg(y_previous->name) != -1) { + // If y_previous is a userreg, repeat the userreg copy. + copy_userreg(y_previous, y_previous->name); + } return y_previous; } @@ -3410,10 +3414,6 @@ void do_put(int regname, yankreg_T *reg, int dir, long count, int flags) reg = get_yank_register(regname, YREG_PASTE); } - if (get_userreg(regname) != -1) { - copy_userreg(reg, regname); - } - y_type = reg->y_type; y_width = reg->y_width; y_size = reg->y_size; |