1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-03-22 14:39:24 -05: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,6 +3089,7 @@ static inline void term_keyinput_internal(
bufchain_add(&term->inbuf, buf, true_len); bufchain_add(&term->inbuf, buf, true_len);
term_added_data(term); term_added_data(term);
} }
if (interactive)
term_bracketed_paste_stop(term); term_bracketed_paste_stop(term);
if (term->ldisc) if (term->ldisc)
ldisc_send(term->ldisc, buf, len, interactive); ldisc_send(term->ldisc, buf, len, interactive);