From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19990 invoked by alias); 13 Feb 2014 17:39:30 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 32383 Received: (qmail 28338 invoked from network); 13 Feb 2014 17:39:22 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 From: Bart Schaefer Message-id: <140213093920.ZM27020@torch.brasslantern.com> Date: Thu, 13 Feb 2014 09:39:20 -0800 In-reply-to: Comments: In reply to "Jun T." "Re: Commit 137b15a fails X02zlevi test" (Feb 14, 1:17am) References: <140208121311.ZM14905@torch.brasslantern.com> <140208144555.ZM16333@torch.brasslantern.com> <140209105343.ZM24252@torch.brasslantern.com> <17919.1391985011@quattro> <140210233703.ZM11806@torch.brasslantern.com> <140212214922.ZM25943@torch.brasslantern.com> X-Mailer: OpenZMail Classic (0.9.2 24April2005) To: zsh-workers@zsh.org Subject: Re: Commit 137b15a fails X02zlevi test MIME-version: 1.0 Content-type: text/plain; charset=us-ascii On Feb 14, 1:17am, Jun T. wrote: } } With the Bart's zpty_flush patch in 32377, it succeeds about 50% } on Mac but still fails 100% on FreeBSD. } On Both systems, the failure is at } comptesteval 'bindkey -a "^R" redo' } zletest $'123\C-_\e\C-r } and all the other tests pass. } (if I set ZTST_verbose=3 then the above test also succeeds always). Hmm. This suggests a race condition where some multi-character sequence is being mis-interpreted. I suspect that what happens is that terminal control sequences are being sent by the on-pty zsh to update the display, but the pty-master zsh is consuming e.g. the leading ESC character first, so the "terminal" ignores the rest and leaves it to be misinterpred later by one shell or the other. A "sleep 1" at the top of zpty_flush may take care of this. } # I noticed that 'stty -a' shows 'reprint' is set to '^R', We should try to avoid characters that clash with the stty controls. comptestinit should probably clear most of those at the same time it sets the baud rate, etc., so that the tests are free to use anything they like (except ^M ...) I won't be able to look at this until this evening at the earliest.