summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-04-11 21:02:54 +0200
committerBram Moolenaar <Bram@vim.org>2016-04-11 21:02:54 +0200
commit0239acb11fe4bfe9b525ea90b782759da5eb7704 (patch)
tree4b240e817c3e357467a9bdd4f46d91a019e3c169
parent939a1abe935a539f2d4c90a56cb0682cbaf3bbb0 (diff)
downloadvim-0239acb11fe4bfe9b525ea90b782759da5eb7704.zip
patch 7.4.1722
Problem: Crash when calling garbagecollect() after starting a job. Solution: Set the copyID on job and channel. (Hirohito Higashi, Ozaki Kiichi)
-rw-r--r--src/eval.c2
-rw-r--r--src/version.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c
index 1c5a31658..0c270b928 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -7326,6 +7326,7 @@ set_ref_in_item(
if (job != NULL && job->jv_copyID != copyID)
{
+ job->jv_copyID = copyID;
if (job->jv_channel != NULL)
{
dtv.v_type = VAR_CHANNEL;
@@ -7350,6 +7351,7 @@ set_ref_in_item(
if (ch != NULL && ch->ch_copyID != copyID)
{
+ ch->ch_copyID = copyID;
for (part = PART_SOCK; part <= PART_IN; ++part)
{
for (jq = ch->ch_part[part].ch_json_head.jq_next; jq != NULL;
diff --git a/src/version.c b/src/version.c
index ef777cf16..4f8bc2ef5 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1722,
+/**/
1721,
/**/
1720,