summaryrefslogtreecommitdiff
path: root/git-cvsserver.perl
diff options
context:
space:
mode:
authorMatthew Ogilvie <mmogilvi_git@miniinfo.net>2012-10-13 23:42:23 -0600
committerJunio C Hamano <gitster@pobox.com>2012-10-16 16:16:27 -0700
commitabd66f2207f4ed3ef54b526004120a9f0eddf67a (patch)
tree8bb63ca0d024b70fffc9e66ee30db892fb52af16 /git-cvsserver.perl
parentbed8a19743f0ae3f92fd6ad5293bb80b587c9279 (diff)
downloadgit-abd66f2207f4ed3ef54b526004120a9f0eddf67a.tar.gz
cvsserver status: provide real sticky info
Signed-off-by: Matthew Ogilvie <mmogilvi_git@miniinfo.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-cvsserver.perl')
-rwxr-xr-xgit-cvsserver.perl24
1 files changed, 20 insertions, 4 deletions
diff --git a/git-cvsserver.perl b/git-cvsserver.perl
index 4d514b44c8..c5ebfa0636 100755
--- a/git-cvsserver.perl
+++ b/git-cvsserver.perl
@@ -502,7 +502,7 @@ sub req_Entry
#$log->debug("req_Entry : $data");
- my @data = split(/\//, $data);
+ my @data = split(/\//, $data, -1);
$state->{entries}{$state->{directory}.$data[1]} = {
revision => $data[2],
@@ -1681,9 +1681,25 @@ sub req_status
print "M Repository revision:\t" .
$meta->{revision} .
"\t$state->{CVSROOT}/$state->{module}/$filename,v\n";
- print "M Sticky Tag:\t\t(none)\n";
- print "M Sticky Date:\t\t(none)\n";
- print "M Sticky Options:\t\t(none)\n";
+ my($tagOrDate)=$state->{entries}{$filename}{tag_or_date};
+ my($tag)=($tagOrDate=~m/^T(.+)$/);
+ if( !defined($tag) )
+ {
+ $tag="(none)";
+ }
+ print "M Sticky Tag:\t\t$tag\n";
+ my($date)=($tagOrDate=~m/^D(.+)$/);
+ if( !defined($date) )
+ {
+ $date="(none)";
+ }
+ print "M Sticky Date:\t\t$date\n";
+ my($options)=$state->{entries}{$filename}{options};
+ if( $options eq "" )
+ {
+ $options="(none)";
+ }
+ print "M Sticky Options:\t\t$options\n";
} else {
print "M Repository revision:\tNo revision control file\n";
}