cvs commit: src/usr.bin/patch - Imported sources

Alexey Dokuchaev danfe at nsu.ru
Wed Aug 4 20:32:21 PDT 2004


On Wed, Aug 04, 2004 at 02:05:24PM -0700, David Schultz wrote:
> On Mon, Aug 02, 2004, Tim Robbins wrote:
> > On Mon, Aug 02, 2004 at 10:45:09AM +0700, Alexey Dokuchaev wrote:
> > > On Sun, Aug 01, 2004 at 08:45:55PM +0000, Garance A Drosehn wrote:
> > > > gad         2004-08-01 20:45:55 UTC
> > > > 
> > > >   FreeBSD src repository
> > > > 
> > > >   src/usr.bin/patch - Imported sources
> > > >   Update of /home/ncvs/src/usr.bin/patch
> > > >   In directory repoman.freebsd.org:/tmp/cvs-serv87568
> > > >   
> > > >   Log Message:
> > > >   Import of a BSD-licensed version of `patch', which will  eventually
> > > >   replace the version we currently have in src/gnu/usr.bin/patch/.
> > > >   Among other things, this version includes a --posix option for strict
> > > >   POSIX conformance.
> > > >   
> > > >   This version is the current source from OpenBSD as of today.  It is
> > > >   their 3.5-release, plus a few updates to patch.c and pch.c that they
> > > >   made about three weeks ago.
> > > 
> > > May I ask why you preferred OpenBSD's version over NetBSD's?  It was
> > > shown in the past that OpenBSD's way of doing thing is a bit rough on
> > > the edges sometimes (humanize_number(3) vs. fmt_scaled(3) and
> > > scan_scaled(3), ftw(3) and nftw(3), etc).
> > 
> > Actually, OpenBSD's ftw()/nftw() implementation is better than the one
> > we recently imported, in terms of both style and functionality; I wish we'd
> > gone with it instead. What we have in -CURRENT at the moment is incredibly
> > buggy for such a simple function. The droll, inane comments ("Because
> > errno is our friend") and style violations only make things worse.
> 
> I agree about the style.  What's wrong with the functionality?
> 
> I have no objection to switching to Todd's (much cleaner) [n]ftw()
> implementation, although I'm not aware of any non-stylistic
> problems with the current code.

I also recall you (David) mentioning that current implementation
does the same thing in half the lines of code, despite its style(9)
deficiencies, and that was the reason why it was imported instead of
OpenBSD's one.  Now when Tim says OpenBSD's one is functionally ahead,
I wonder what is better: to improve our (current) version WRT both style
and functionality, probably without doubling the code lines, or make a
step backwards and import OpenBSD version?

./danfe


More information about the cvs-all mailing list