Date: Wed, 9 Jun 2004 19:13:56 -0700 From: David Schultz <das@FreeBSD.ORG> To: freebsd-arch@FreeBSD.ORG Subject: Re: fflush() on readonly files Message-ID: <20040610021356.GA4990@VARK.homeunix.com> In-Reply-To: <20040609154040.GA26229@asura.bsd> References: <20040609154040.GA26229@asura.bsd>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jun 09, 2004, Radim Kolar wrote: > I have submitted pr http://www.freebsd.org/cgi/query-pr.cgi?pr=65402 with patch > which makes fflush() on read only descriptors do not return error code. > > Reasons for this patch: > 1 - Do not breaks ISO C standard > 2 - Makes FreeBSD undefined behavior compatible with other operation systems > 3 - Correct some programs depending on this Are there any such programs? > 4 - Makes fflush() and fsync() behavior identical - avoids programmer's confusion. > 5 - If there are no data to flush() then flush operation (dummy) succeeds, not failed. > > Against this patch: > Programs which rely upon fflush() not returning an error > when passed a file which is opened read-only are broken, > and should be fixed. > > Colin Percival I don't see how that's an argument against it. Programs that call fflush() on a read-only stream are broken either way. > Are there any other reasons for non commiting it? I think that in this case > pro > cons. Well, I think all those other operating systems (Solaris, HP-UX, Linux, etc.) are wrong in this case, but it would probably behoove us to conform to the /de facto/ standard.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040610021356.GA4990>