[cvsnt] Error in CVSROOT as reported to loginfo

Bo Berglund Bo.Berglund at system3r.se
Thu Jan 9 12:15:23 GMT 2003


Tony,
I discovered a problematic thing in the data supplied to the loginfo script:
I specify the $CVSROOT variable to be sent to my script, but it turns out that the
string is not correct. What is sent is not the true CVSROOT but rather what the
user has supplied to his commit. Since we are on Windows the entry in the
local file CVS/Root can vary when you check out from the same repository.
An example:
I have a CVSNT server with a number of different repositories. One particular such
repository is /TOOL (I use the prefix to get rid of the search path).
Now if a person checks out a module from the server and specifies a root like /Tool,
then this root goes into the CVS/Root file instead of the true root on the repository.

When he later commits his changes the loginfo script triggers and gets /Tool as
the $CVSROOT variable even though the repository is named /TOOL as defined
in the registry!

What this results in is a breakage of any attempt to use the CVSWeb as server for diffs
etc, because CvsWeb is case sensitive. It will not recognize /Tool as a valid root and
thus it outputs an error. I believe that ViewCvs does the same but I have not yet checked
(will do tonight).

Suggestion:
Please let CVSNT supply the correct server side CVSROOT when the environment variable
$CVSROOT is specified in the loginfo script (and all other scripts as well).

Best regards,

Bo Berglund





More information about the cvsnt mailing list