diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2020-11-14 08:48:28 +0100 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2020-11-14 08:48:28 +0100 |
| commit | be0a71b9ce42622c4f06be6842760bd131ef1915 (patch) | |
| tree | 316f2a6adc6358af8abba63323df5681fc72397b /test/core/text-test.c | |
| parent | d14313b7afdd682bda6934e1fa9f35e7119ddaab (diff) | |
| download | vis-be0a71b9ce42622c4f06be6842760bd131ef1915.tar.gz vis-be0a71b9ce42622c4f06be6842760bd131ef1915.tar.xz | |
vis: fix <C-c> processing after SIGINT
There are two main ways how the input queue is managed in vis:
- vis_keys_feed(..) appends new input to the queue and immediately
starts processing it. Starting from the position before the call
i.e. ignoring any previously queued input.
This is typically used in key binding handlers where the input
queue still contains the mapping leading to the invocation of the
handler. In that case new input should be interpreted immediately,
before the handler eventually returns and its mapping is consumed.
- vis_keys_push(..) with pos=0, appends new input to the end of the
queue and starts processing it from the start of the queue, taking
the full content into consideration.
This is used by the main loop when new input becomes available.
This patch switches the handling of <C-c> after a SIGINT from the former
to the latter mechanism and fixes mappings using <C-c> in a non-leading
position.
Diffstat (limited to 'test/core/text-test.c')
0 files changed, 0 insertions, 0 deletions
