From: Frank Lichtenheld Date: Fri, 15 Jun 2007 01:01:52 +0000 (+0200) Subject: cvsserver: Let --base-path and pserver get along just fine X-Git-Tag: v1.5.3-rc0~90^2~1 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=fd1cd91e9407bccba3380dad6dcb60c4154d94a2;p=git.git cvsserver: Let --base-path and pserver get along just fine Embarassing bug number one in my options patch. Since the code for --base-path support rewrote the cvsroot value after comparing it with a possible existing value (i.e. from pserver authentication) the check always failed. Signed-off-by: Frank Lichtenheld Signed-off-by: Junio C Hamano --- diff --git a/git-cvsserver.perl b/git-cvsserver.perl index 9fbd9dbb2..f78afe812 100755 --- a/git-cvsserver.perl +++ b/git-cvsserver.perl @@ -212,15 +212,17 @@ sub req_Root return 0; } + my $cvsroot = $state->{'base-path'} || ''; + $cvsroot =~ s#/+$##; + $cvsroot .= $data; + if ($state->{CVSROOT} - && ($state->{CVSROOT} ne $data)) { + && ($state->{CVSROOT} ne $cvsroot)) { print "error 1 Conflicting roots specified\n"; return 0; } - $state->{CVSROOT} = $state->{'base-path'} || ''; - $state->{CVSROOT} =~ s#/+$##; - $state->{CVSROOT} .= $data; + $state->{CVSROOT} = $cvsroot; $ENV{GIT_DIR} = $state->{CVSROOT} . "/"; diff --git a/t/t9400-git-cvsserver-server.sh b/t/t9400-git-cvsserver-server.sh index 392f890ce..9b69452d6 100755 --- a/t/t9400-git-cvsserver-server.sh +++ b/t/t9400-git-cvsserver-server.sh @@ -163,6 +163,7 @@ BEGIN AUTH REQUEST anonymous END AUTH REQUEST +Root /gitcvs.git EOF test_expect_success 'req_Root (base-path)' \