forked from aniani/vim
patch 8.1.2046: SafeState may be triggered at the wrong moment
Problem: SafeState may be triggered at the wrong moment.
Solution: Move it up higher to after where messages are processed. Add a
SafeStateAgain event to tigger there.
This commit is contained in:
@@ -3593,10 +3593,6 @@ channel_read_json_block(
|
||||
|
||||
ch_log(channel, "Blocking read JSON for id %d", id);
|
||||
|
||||
// Not considered a safe state here, since we are processing a JSON message
|
||||
// and parsing other messages while waiting.
|
||||
enter_unsafe_state();
|
||||
|
||||
if (id >= 0)
|
||||
channel_add_block_id(chanpart, id);
|
||||
|
||||
@@ -3666,9 +3662,6 @@ channel_read_json_block(
|
||||
if (id >= 0)
|
||||
channel_remove_block_id(chanpart, id);
|
||||
|
||||
// This may trigger a SafeState autocommand.
|
||||
leave_unsafe_state();
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user