diff options
-rw-r--r-- | src/nvim/ops.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/nvim/ops.c b/src/nvim/ops.c index 02faf438ea..af7b9e007a 100644 --- a/src/nvim/ops.c +++ b/src/nvim/ops.c @@ -898,7 +898,11 @@ static void typval_to_yankreg(yankreg_T* yankreg, typval_T* val) i = 0; TV_LIST_ITER_CONST(tv.vval.v_list, li, { - yankreg->y_array[i] = strdup(tv_get_string(&li->li_tv)); + if (li->li_tv.v_type == VAR_STRING) { + yankreg->y_array[i] = strdup(tv_get_string(&li->li_tv)); + } else { + yankreg->y_array[i] = NULL; + } ++ i; }); @@ -941,6 +945,8 @@ static void typval_to_yankreg(yankreg_T* yankreg, typval_T* val) break; } + + yankreg->timestamp = os_time(); } static void copy_userreg(yankreg_T* into, int regname) |