1
0
forked from aniani/vim

patch 8.1.1575: callbacks may be garbage collected

Problem:    Callbacks may be garbage collected.
Solution:   Set reference in callbacks. (Ozaki Kiichi, closes #4564)
This commit is contained in:
Bram Moolenaar
2019-06-20 03:45:36 +02:00
parent a3fce62c91
commit 75a1a9415b
13 changed files with 164 additions and 7 deletions

View File

@@ -4479,7 +4479,8 @@ set_ref_in_channel(int copyID)
channel_T *channel;
typval_T tv;
for (channel = first_channel; channel != NULL; channel = channel->ch_next)
for (channel = first_channel; !abort && channel != NULL;
channel = channel->ch_next)
if (channel_still_useful(channel))
{
tv.v_type = VAR_CHANNEL;
@@ -5568,7 +5569,7 @@ set_ref_in_job(int copyID)
job_T *job;
typval_T tv;
for (job = first_job; job != NULL; job = job->jv_next)
for (job = first_job; !abort && job != NULL; job = job->jv_next)
if (job_still_useful(job))
{
tv.v_type = VAR_JOB;