1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00

Don't call term_bracketed_paste_stop before pasted data.

The redesign in commit 9fccb065a arranged that all keystroke data goes
via term_keyinput_internal, which calls term_bracketed_paste_stop just
in case the keystroke had interrupted an in-progress paste.

But, embarrassingly, I forgot that _pasted_ data also goes via
term_keyinput_internal, and bracketed paste mode certainly should not
be terminated before _that_ is sent! I should have conditionalised the
call to term_bracketed_paste_stop on the 'interactive' flag parameter,
which is precisely there to tell the difference between pastes and
true keyboard input.
This commit is contained in:
Simon Tatham 2019-08-03 18:09:05 +01:00
parent 8b87d80a84
commit 2c279283cc

View File

@ -3089,7 +3089,8 @@ static inline void term_keyinput_internal(
bufchain_add(&term->inbuf, buf, true_len);
term_added_data(term);
}
term_bracketed_paste_stop(term);
if (interactive)
term_bracketed_paste_stop(term);
if (term->ldisc)
ldisc_send(term->ldisc, buf, len, interactive);
term_seen_key_event(term);