From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14728 invoked from network); 30 Sep 2001 00:24:32 -0000 Received: from sunsite.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 30 Sep 2001 00:24:32 -0000 Received: (qmail 7353 invoked by alias); 30 Sep 2001 00:24:27 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 15903 Received: (qmail 7339 invoked from network); 30 Sep 2001 00:24:27 -0000 Date: Sat, 29 Sep 2001 20:24:23 -0400 From: lordzork@lordzork.com To: zsh-workers@sunsite.dk Subject: Re: error on TTY read: no such file or directory Message-ID: <20010929202423.K16561@hithaeglir.net> Reply-To: lordzork@lordzork.com References: <20010928121347.B16561@hithaeglir.net> <3BB56D03.2000300@mow.siemens.ru> <20010929034953.E16561@hithaeglir.net> <3BB62E93.10802@mow.siemens.ru> <20010929170811.G16561@hithaeglir.net> <3BB63D16.5040709@mow.siemens.ru> <20010929173848.H16561@hithaeglir.net> <3BB64378.8060505@mow.siemens.ru> <20010929181100.I16561@hithaeglir.net> <1010929223918.ZM20169@candle.brasslantern.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1010929223918.ZM20169@candle.brasslantern.com> Organization: lordzork industries X-GPG-Key-ID: 1024D/EE946A6E X-GPG-Key-Fingerprint: E27C 03D8 A1B6 F7C5 2B92 58A9 4BEA 926A EE94 6A6E X-GPG-Public-Key: http://lordzork.com/tmk.pub.asc X-Mailer: CHIKKEN MAIL 0.80 BETA (CHIKKEN) X-Originating-IP: [127.0.0.1] X-Midgets: too tall In the gothic chambers of the underworld on Sat 29 Sep 2001 at 18:39 -0400, Bart Schaefer muttered darkly: > On Sep 29, 6:11pm, lordzork@lordzork.com wrote: > } > } ((UID)) || { > } set -x > } exec 2>|/tmp/login-trace > } } > > You can take that out now, it isn't helping. > > } > It was not my question. I do not understand where this data comes from > } > and how can read one byte return 1025 bytes. It looks more like a > } > contents of readdir() but I have no idea how can it appear on shell input. > > The data printed by strace is misleading. read() is being called with > the address of single character (line 405 of zle_main.c): > > r = read(SHTTY, &cc, 1); > > Strace displays the arguments as they were passed *to* the read() call, > not as they are returned, so what you're seeing in the trace is just > stack garbage. > > Nevertheless, the problem is that read() is returning a positive integer > greater than the number of bytes it was asked to read. This confuses > the getkey() loop, which only expects that `r' can be 1, 0, or -1 at > that point. You need to find out why your read() call is so badly broken! > and this read() function is a part of what? zsh? glibc? t. -- 4.0k -rw-rw-r-- 1 zork zork 17 Apr 4 17:38 .signature