From owner-cvs-all Thu Sep 6 19:55:26 2001 Delivered-To: cvs-all@freebsd.org Received: from elvis.mu.org (elvis.mu.org [216.33.66.196]) by hub.freebsd.org (Postfix) with ESMTP id D7B2E37B401; Thu, 6 Sep 2001 19:55:18 -0700 (PDT) Received: by elvis.mu.org (Postfix, from userid 1192) id AB6C981D05; Thu, 6 Sep 2001 21:55:18 -0500 (CDT) Date: Thu, 6 Sep 2001 21:55:18 -0500 From: Alfred Perlstein To: "Andrey A. Chernov" Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/lib/libc/stdio stdio.c Message-ID: <20010906215518.X81307@elvis.mu.org> References: <200109070213.f872DCa19917@freefall.freebsd.org> <20010906212527.W81307@elvis.mu.org> <20010907063714.B95517@nagual.pp.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010907063714.B95517@nagual.pp.ru>; from ache@nagual.pp.ru on Fri, Sep 07, 2001 at 06:37:14AM +0400 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG * Andrey A. Chernov [010906 21:37] wrote: > On Thu, Sep 06, 2001 at 21:25:27 -0500, Alfred Perlstein wrote: > > change you did broke things. One way to fix this would be to record > > the failed lseek returning EISPIPE and noting that the backing > > object is not seekable, from then on you could avoid the unnescesary > > syscalls. > > I plan to do exact the same thing you describe (i.e. remove __SAPP when > ESPIPE happens) + add error checking for __SOPT (i.e. regular) files only. I'm not sure that's completely safe, a user defined stdio stream may switch the underlying file, it we cache information we may break the ability to do that. -- -Alfred Perlstein [alfred@freebsd.org] 'Instead of asking why a piece of software is using "1970s technology," start asking why software is ignoring 30 years of accumulated wisdom.' To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message