From 5e542ba56e7d34516ebe7d717b84959d476eb04c Mon Sep 17 00:00:00 2001 From: Florian Walch Date: Tue, 23 Dec 2014 21:37:19 +0100 Subject: vim-patch:7.4.513 Problem: Crash because reference count is wrong for list returned by getreg(). Solution: Increment the reference count. (Kimmy Lindvall) https://code.google.com/p/vim/source/detail?r=v7-4-513 --- src/nvim/eval.c | 3 +++ src/nvim/version.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/nvim/eval.c b/src/nvim/eval.c index 67a68f70d5..ffae24a380 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -9553,6 +9553,9 @@ static void f_getreg(typval_T *argvars, typval_T *rettv) rettv->v_type = VAR_LIST; rettv->vval.v_list = get_reg_contents(regname, (arg2 ? kGRegExprSrc : 0) | kGRegList); + if (rettv->vval.v_list != NULL) { + rettv->vval.v_list->lv_refcount++; + } } else { rettv->v_type = VAR_STRING; rettv->vval.v_string = get_reg_contents(regname, arg2 ? kGRegExprSrc : 0); diff --git a/src/nvim/version.c b/src/nvim/version.c index 059f1eb090..039a49006e 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -225,7 +225,7 @@ static int included_patches[] = { //516, //515, //514, - //513, + 513, //512 NA //511 NA //510 NA -- cgit