git-cvsserver and change=T
- From
- Donald Munro <donaldmunro@gmail.com>
- Date
- Aug 8, 2007, 14:45 UTC
- Message-ID
- <89ede7e0708080745y17770fetd6b7e960b0485706@mail.gmail.com>
git-cvsserver (git v1.5.2.4) seems to be failing on cvs checkout with the following message: Died at /usr/bin/git-cvsserver line 2534, <FILELIST> chunk 24. Issuing rollback() for database handle being DESTROY'd without explicit disconnect(), <FILELIST> line 24.
The code around 2534 is:
my $filepipe = open(FILELIST, '-|', 'git-diff-tree', '-z', '-r',
$lastpicked, $commit->{hash}) or die("Cannot call git-diff-tree :
$!");
........
my ($mode, $hash, $change) = ($1, $2, $3);
............
if ( $change eq "D" )
.......
elsif ( $change eq "M" )
........
elsif ( $change eq "A" )
........
else
{
$log->warn("UNKNOWN FILE CHANGE mode=$mode,
hash=$hash, change=$change, name=$name");
die;
}