mirror of
https://github.com/neovim/neovim.git
synced 2025-10-06 09:56:31 +00:00
fix(rpc): ignore redraw events when not in UI client (#21892)
Otherwise it will crash.
This commit is contained in:
@@ -247,10 +247,12 @@ static void parse_msgpack(Channel *channel)
|
||||
Unpacker *p = channel->rpc.unpacker;
|
||||
while (unpacker_advance(p)) {
|
||||
if (p->type == kMessageTypeRedrawEvent) {
|
||||
if (p->grid_line_event) {
|
||||
ui_client_event_raw_line(p->grid_line_event);
|
||||
} else if (p->ui_handler.fn != NULL && p->result.type == kObjectTypeArray) {
|
||||
p->ui_handler.fn(p->result.data.array);
|
||||
if (ui_client_channel_id) {
|
||||
if (p->grid_line_event) {
|
||||
ui_client_event_raw_line(p->grid_line_event);
|
||||
} else if (p->ui_handler.fn != NULL && p->result.type == kObjectTypeArray) {
|
||||
p->ui_handler.fn(p->result.data.array);
|
||||
}
|
||||
}
|
||||
arena_mem_free(arena_finish(&p->arena));
|
||||
} else if (p->type == kMessageTypeResponse) {
|
||||
|
Reference in New Issue
Block a user