mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.1.1605: Vim may delay processing messages on a json channel
Problem: Vim may delay processing messages on a json channel. (Pontus Leitzler) Solution: Try parsing json when checking if there is readahead.
This commit is contained in:
parent
13b47c37a6
commit
4340fc95d5
@ -2851,9 +2851,13 @@ channel_has_readahead(channel_T *channel, ch_part_T part)
|
|||||||
if (ch_mode == MODE_JSON || ch_mode == MODE_JS)
|
if (ch_mode == MODE_JSON || ch_mode == MODE_JS)
|
||||||
{
|
{
|
||||||
jsonq_T *head = &channel->ch_part[part].ch_json_head;
|
jsonq_T *head = &channel->ch_part[part].ch_json_head;
|
||||||
jsonq_T *item = head->jq_next;
|
|
||||||
|
|
||||||
return item != NULL;
|
if (head->jq_next == NULL)
|
||||||
|
// Parse json from readahead, there might be a complete message to
|
||||||
|
// process.
|
||||||
|
channel_parse_json(channel, part);
|
||||||
|
|
||||||
|
return head->jq_next != NULL;
|
||||||
}
|
}
|
||||||
return channel_peek(channel, part) != NULL;
|
return channel_peek(channel, part) != NULL;
|
||||||
}
|
}
|
||||||
|
@ -777,6 +777,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1605,
|
||||||
/**/
|
/**/
|
||||||
1604,
|
1604,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user