From owner-freebsd-standards@FreeBSD.ORG Sat Jul 28 19:08:48 2012 Return-Path: Delivered-To: standards@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id ABBE8106566B; Sat, 28 Jul 2012 19:08:48 +0000 (UTC) (envelope-from matthewstory@gmail.com) Received: from mail-ob0-f182.google.com (mail-ob0-f182.google.com [209.85.214.182]) by mx1.freebsd.org (Postfix) with ESMTP id 608508FC17; Sat, 28 Jul 2012 19:08:48 +0000 (UTC) Received: by obbun3 with SMTP id un3so8058053obb.13 for ; Sat, 28 Jul 2012 12:08:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=md2bZ0FxUyoKonAoL8HNk2tK0MpHFkDcQgP20j6haP0=; b=yqGm2xae7FjyML+wSBSLkE4qNV5VBh5DK2DHAMGLiQpt4Y9LmtP3pniEgEklJrJPrL b4EbPI2mCtwcVt4w3CqafjSlEZiSlsvaKBlISrvpe5SyHCwQoi8204P/J/RP9kkE3ve9 ss7NOph+KKrVYo+3XH57vCE8TTCaJ0KKRf8DFhWNffQVEuuQLt/BonX1UtDN/zvOt0y+ DWFbLh+LkouLJaSFTnEWTdicVq6FeSuncboHujXUEoZb4Q9RqSVZeEyUjb4mP0xsfgN8 PA4XRxEJEdbYSf4OfJd+No5FnCdvnSWLUBFX1I0ox5yzl8yWDc6uY9rhnO2TJFanjbTL rNnA== MIME-Version: 1.0 Received: by 10.60.171.174 with SMTP id av14mr9418232oec.61.1343502527864; Sat, 28 Jul 2012 12:08:47 -0700 (PDT) Received: by 10.76.21.48 with HTTP; Sat, 28 Jul 2012 12:08:47 -0700 (PDT) In-Reply-To: References: <201203041403.29020.jhb@freebsd.org> <20120321214525.GA46850@zim.MIT.EDU> Date: Sat, 28 Jul 2012 15:08:47 -0400 Message-ID: From: Matthew Story To: Matthew Story , standards@freebsd.org, jhb@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: Re: PR kern/164674 X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Jul 2012 19:08:48 -0000 On Wed, Mar 21, 2012 at 11:43 PM, Matthew Story wrote: > On Wed, Mar 21, 2012 at 5:45 PM, David Schultz wrote: > >> On Mon, Mar 12, 2012, Matthew Story wrote: >> > On Sun, Mar 4, 2012 at 2:03 PM, John Baldwin wrote: >> > [...snip] > >> There ought to be a less ugly fix than the one proposed. Probably >> the PRINT macro and the various other evil macros in vfprintf() >> should set ret to EOF, and the following lines in vfprintf.c should >> be removed: >> >> if (__sferror(fp)) >> ret = EOF; >> >> If vfprintf() is fixed so that printing to a buffered stream >> always returns success after a successful write (regardless of the >> prior state of the stream's error indicator), that should fix the >> problem for unbuffered streams automatically. Unbuffered streams >> go through __sbprintf(), which throws away the output if >> vfprintf() returns -1. >> > > yeah ... I wasn't overly pleased with my fix as it stands. my concern was > that the __sferror(fp) acts as a catch-all for any non-handled error case > in the actual print logic. there are only 2 places in the function that > explicitly set __SERR and goto error. > > i'll do a thorough audit of all potential side-effects of the above calls > re: __SERR, and follow-up with something less butchered. > Checking back in on the status of this PR, submitted a follow-up patch per das' suggestion in April. Any progress on getting this in? > > -- > regards, > matt > -- regards, matt