diff --git a/src/reader.rs b/src/reader.rs index 55728c7c8..a1c77915f 100644 --- a/src/reader.rs +++ b/src/reader.rs @@ -3508,6 +3508,10 @@ impl<'a> Reader<'a> { self.parser.libdata_mut().is_repaint = false; } rl::ScrollbackPush => { + if self.waiting_for_cursor_position.is_some() { + // TODO: re-queue it I guess. + return; + } self.request_cursor_position(WaitingForCursorPosition::ScrollbackPush); } rl::SelfInsert | rl::SelfInsertNotFirst | rl::FuncAnd | rl::FuncOr => { diff --git a/tests/checks/tmux-scrollback.fish b/tests/checks/tmux-scrollback.fish new file mode 100644 index 000000000..28bb350e1 --- /dev/null +++ b/tests/checks/tmux-scrollback.fish @@ -0,0 +1,8 @@ +#RUN: %fish %s +#REQUIRES: command -v tmux + +isolated-tmux-start +isolated-tmux send-keys 'bind ctrl-g "commandline -f scrollback-push scrollback-push"' Enter C-g +tmux-sleep +isolated-tmux capture-pane -p +# CHECK: prompt 1>