summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-03-21 19:58:00 +0100
committerBram Moolenaar <Bram@vim.org>2019-03-21 19:58:00 +0100
commit9029b918f902c01e8f46441155ec2f01690929f9 (patch)
treee3991d4c8fe66a779f7e958e19205232ba0e0643 /src
parent08cda65ddfbb4bce8cef43726a0c00817fc47327 (diff)
patch 8.1.1028: MS-Windows: memory leak when creating terminal failsv8.1.1028
Problem: MS-Windows: memory leak when creating terminal fails. Solution: Free the command. (Ken Takata, closes #4138)
Diffstat (limited to 'src')
-rw-r--r--src/os_win32.c3
-rw-r--r--src/version.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/src/os_win32.c b/src/os_win32.c
index ff11777220..7930957ad3 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -4866,7 +4866,10 @@ mch_call_shell_terminal(
argvar[1].v_type = VAR_UNKNOWN;
buf = term_start(argvar, NULL, &opt, TERM_START_SYSTEM);
if (buf == NULL)
+ {
+ vim_free(newcmd);
return 255;
+ }
job = term_getjob(buf->b_term);
++job->jv_refcount;
diff --git a/src/version.c b/src/version.c
index ee8a4d6dd4..cebd9207c1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -780,6 +780,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1028,
+/**/
1027,
/**/
1026,