git-svn: properly set path for "info" command

canonicalize_path() was previously changed to better
fit SVN 1.5, but it makes the "info" command not match
svn(1) in two places:

  1) URL ended up with a trailing slash when run without an
     argument.

  2) "Path: " was displayed instead of "Path: ." when run
     without an argument.

We will also handle odd cases where a user wants to
get information on a file or directory named "0", too.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Eric Wong 2008-08-05 00:35:16 -07:00 committed by Junio C Hamano
parent 1168d402d2
commit bd2d4f96b3

View File

@ -796,8 +796,8 @@ sub cmd_commit_diff {
}
sub cmd_info {
my $path = canonicalize_path(shift or ".");
unless (scalar(@_) == 0) {
my $path = canonicalize_path(defined($_[0]) ? $_[0] : ".");
if (exists $_[1]) {
die "Too many arguments specified\n";
}
@ -813,6 +813,10 @@ sub cmd_info {
die "Unable to determine upstream SVN information from ",
"working tree history\n";
}
# canonicalize_path() will return "" to make libsvn 1.5.x happy,
$path = "." if $path eq "";
my $full_url = $url . ($path eq "." ? "" : "/$path");
if ($_url) {