bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

possible bugfix found (Re: checkout_repository-1)


From: Mark D. Baushke
Subject: possible bugfix found (Re: checkout_repository-1)
Date: Sat, 25 Oct 2003 10:45:13 -0700

Paul Edwards <kerravon@nosppaam.w3.to> writes:

> "Mark D. Baushke" <mdb@cvshome.org> wrote in message 
> news:mailman.2414.1067034757.21628.bug-cvs@gnu.org...
> > The only thing I have seen is that the nightly testing for TRUNK on
> > "Power_Macintosh Darwin" has problems with the remotecheck and bombs out
> > during the checkout_repository-1 test.
> 
> > So, you see in this particular case, it has lost the
> 
> >    "cvs [checkout aborted]: "
> 
> > text as a prefix to the error message and gained a "? CVSROOT" line.
> 
> Can you apply the following patch and then show me the last few lines
> of paul.txt to see if CVS at least thinks it is printing out the right
> thing at that late stage.

The patch as written will stop most of the tests due to "? paul.txt"
showing up in the various directories when a checkout is being done.

All that said, I believe I have found the root-cause of the problem.

The problem appears to be that both ${CVS_DIRNAME}/CVS and
${CVS_DIRNAME}/modules exist after the parseroot test is run. 

On MacOS X, /tmp/cvs-sanity/cvsroot and /tmp/cvs-sanity/CVSROOT are the
same directory... so, later, when the checkout_repository test is run,
it has problems. The solution would seem to be to run the parseroot test
inside of a subdirectory.

I still need to finish running my regression tests before checkin, but
I think I have nailed this particular problem and I include the patch
after my .signature.

If it works and the all of the nightly sanity tests pass, maybe we
can get Derek to release a new version of the feature branch.

What I do not really understand is why this is not a problem in the
cvs-1-11-x-branch which seems to have the same parseroot test as the
trunk...

        Enjoy!
        -- Mark

Log entry:

        * sanity.sh (parseroot): Perform test in a subdirectory.
        Fixes problem on case-insensitive systems where CVSROOT
        and cvsroot are effectively the same directory.

Index: src/sanity.sh
===================================================================
RCS file: /cvs/ccvs/src/sanity.sh,v
retrieving revision 1.830
diff -u -p -r1.830 sanity.sh
--- src/sanity.sh       24 Oct 2003 23:03:20 -0000      1.830
+++ src/sanity.sh       25 Oct 2003 17:35:43 -0000
@@ -3725,6 +3725,7 @@ W [0-9-]* [0-9:]* ${PLUS}0000 ${username
                ;;
 
        parseroot)
+         mkdir 1; cd 1
          # Test odd cases involving CVSROOT.  At the moment, that means we
          # are testing roots with '/'s on the end, which CVS should parse off.
          CVSROOT_SAVED=${CVSROOT}
@@ -3738,6 +3739,11 @@ new revision: 1\.2; previous revision: 1
 done
 ${SPROG} commit: Rebuilding administrative file database"
          CVSROOT=${CVSROOT_SAVED}
+
+         dokeep
+
+         cd ..
+         rm -r 1
          ;;
 
        files)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]