delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2000/08/10/14:06:30

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Date: Thu, 10 Aug 2000 14:04:40 -0400
From: Jason Tishler <Jason DOT Tishler AT dothill DOT com>
To: "Charles S. Wilson" <cwilson AT ece DOT gatech DOT edu>
Cc: cygwin AT sourceware DOT cygnus DOT com
Subject: Re: gdbm & cvs packages ready for official inclusion?
Message-ID: <20000810140439.A1030@KOSH>
References: <3991BCE6 DOT 575B808F AT ece DOT gatech DOT edu> <20000810094335 DOT B1202 AT KOSH> <3992CF05 DOT E3B2FFA8 AT ece DOT gatech DOT edu> <3992D4B6 DOT 63769272 AT ece DOT gatech DOT edu>
Mime-Version: 1.0
User-Agent: Mutt/1.2.4i
In-Reply-To: <3992D4B6.63769272@ece.gatech.edu>; from cwilson@ece.gatech.edu on Thu, Aug 10, 2000 at 12:13:42PM -0400
Organization: Dot Hill Systems Corp.

On Thu, Aug 10, 2000 at 12:13:42PM -0400, Charles S. Wilson wrote:
> Instead, can you verify that Alan Griffiths' analysis is
> correct?
> 
> Alan Griffiths wrote:
> > I don't follow the code well enough to be sure what is going on, but this
> > is caused by the call to 'isdir' at line 437 of ignore.c (in 1.10.7 anyway).
> > 
> > Resetting errno after the call suppresses the message.  (I don't propose
> > this as a fix since there probably is a problem in the code and this would
> > hide it.)

I can't confirm that the problem is caused by isdir() as described by Alan,
but he is definitely correct that the problem is in:

    src/ignore.c:ignore_files()

I can offer the following few more tidbits.  We have from the original cvs
1.10.8 source:

    void
    ignore_files (ilist, entries, update_dir, proc)
    {
        ...
        errno = 0;
        while ((dp = readdir (dirp)) != NULL)
        {
            ...
        }
        if (errno != 0)
            error (0, errno, "error reading current directory");
        ...
    }

So during a cvs update, some code executed during the while loop is setting
errno to nonzero.  By greping sys/errno.h, we get that "Function not
implemented" maps to ENOSYS.

Without using gdb, I can't offer any more.  Shame on me, but I have never
used gdb before -- although I have used many other debugger.  Anyway, I'm
willing to give gdb a whirl, but I believe that you could set up cvs in
client/server mode much faster than I can get up to speed with gdb.
Especially, if you have a UNIX/Linux box lying around with a cvs
repository on it.

Thanks,
Jason

-- 
Jason Tishler
Director, Software Engineering       Phone: +1 (732) 264-8770 x235
Dot Hill Systems Corporation         Fax:   +1 (732) 264-8798
82 Bethany Road, Suite 7             Email: Jason DOT Tishler AT dothill DOT com
Hazlet, NJ 07730 USA                 WWW:   http://www.dothill.com

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019