diff options
author | Jurica Bradaric <jbradaric@gmail.com> | 2016-02-21 11:11:50 +0100 |
---|---|---|
committer | Jurica Bradaric <jbradaric@gmail.com> | 2016-02-21 11:15:08 +0100 |
commit | 29b393e43ae9ee03265594e0e9995a089cd0538b (patch) | |
tree | 452642794175416aab514a11654f40ab525abb6f /src | |
parent | fc51f86b727bb3bd8e65b8a0bab0548a90582269 (diff) | |
download | rneovim-29b393e43ae9ee03265594e0e9995a089cd0538b.tar.gz rneovim-29b393e43ae9ee03265594e0e9995a089cd0538b.tar.bz2 rneovim-29b393e43ae9ee03265594e0e9995a089cd0538b.zip |
vim-patch:7.4.939
Problem: Memory leak when encountering a syntax error.
Solution: Free the memory. (Dominique Pelle)
https://github.com/vim/vim/commit/9a7d58e42ed54406437c2394e5a489ee6a9e4220
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/ex_docmd.c | 5 | ||||
-rw-r--r-- | src/nvim/version.c | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index dfae2b849d..eb8fee97f2 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -9387,17 +9387,20 @@ static void ex_match(exarg_T *eap) g = vim_strnsave(eap->arg, (int)(p - eap->arg)); p = skipwhite(p); if (*p == NUL) { - /* There must be two arguments. */ + // There must be two arguments. + xfree(g); EMSG2(_(e_invarg2), eap->arg); return; } end = skip_regexp(p + 1, *p, TRUE, NULL); if (!eap->skip) { if (*end != NUL && !ends_excmd(*skipwhite(end + 1))) { + xfree(g); eap->errmsg = e_trailing; return; } if (*end != *p) { + xfree(g); EMSG2(_(e_invarg2), p); return; } diff --git a/src/nvim/version.c b/src/nvim/version.c index 7d4b8982cd..3d7077e777 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -351,7 +351,7 @@ static int included_patches[] = { // 942, // 941, // 940 NA - // 939, + 939, // 938 NA // 937, // 936, |