diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-10-09 17:28:01 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-10-09 17:28:01 +0200 |
commit | dc0ccaee68ca24d10050117fbec757ad33590a17 (patch) | |
tree | 8a98b130b1cd6b91b209c8163220da3f6c5ae440 /src/eval.c | |
parent | 9b4579481892a62e7e002498b9eddaaf75bbda49 (diff) | |
download | vim-git-dc0ccaee68ca24d10050117fbec757ad33590a17.tar.gz |
patch 8.0.0027v8.0.0027
Problem: A channel is closed when reading on stderr or stdout fails, but
there may still be something to read on another part.
Solution: Turn ch_to_be_closed into a bitfield. (Ozaki Kiichi)
Diffstat (limited to 'src/eval.c')
-rw-r--r-- | src/eval.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/eval.c b/src/eval.c index 3b5abe9c3..18eb87936 100644 --- a/src/eval.c +++ b/src/eval.c @@ -5622,7 +5622,7 @@ set_ref_in_item( else if (tv->v_type == VAR_CHANNEL) { channel_T *ch =tv->vval.v_channel; - int part; + ch_part_T part; typval_T dtv; jsonq_T *jq; cbq_T *cq; @@ -5630,7 +5630,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 (part = PART_SOCK; part < PART_COUNT; ++part) { for (jq = ch->ch_part[part].ch_json_head.jq_next; jq != NULL; jq = jq->jq_next) |