From d9718410b1612985432cffd3e5fbcac148840be7 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Thu, 27 Aug 2009 14:15:54 +0000 Subject: [PATCH] fix 'darcs-all rec' (amongst other things) --- darcs-all | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/darcs-all b/darcs-all index 30b98a0..1a0e639 100644 --- a/darcs-all +++ b/darcs-all @@ -26,6 +26,7 @@ my $defaultrepo; my $verbose = 2; my $ignore_failure = 0; +my $want_remote_repo = 0; my %tags; @@ -114,17 +115,15 @@ sub darcsall { $path = "$repo_base/$localpath"; } else { - if ($remotepath =~ /^http:/) { - message "Ignoring $localpath; remote is http URL"; - next REPO; - } - else { - $path = "$repo_base/$remotepath"; - } + $path = "$repo_base/$remotepath"; } if (-d "$localpath/_darcs") { - darcs (@_, "--repodir", $localpath, $path); + if ($want_remote_repo) { + darcs (@_, "--repodir", $localpath, $path); + } else { + darcs (@_, "--repodir", $localpath); + } } elsif ($tag eq "") { message "== Required repo $localpath is missing! Skipping"; @@ -172,12 +171,7 @@ sub darcsget { $path = "$repo_base/$localpath"; } else { - if ($remotepath =~ /^http:/) { - $path = $remotepath; - } - else { - $path = "$repo_base/$remotepath"; - } + $path = "$repo_base/$remotepath"; } if (($tag eq "") || defined($tags{$tag})) { @@ -247,6 +241,9 @@ sub main { # Hack around whatsnew failing if there are no changes $ignore_failure = 1; } + if ($command =~ /^(pul|pus|sen|put)/) { + $want_remote_repo = 1; + } darcsall @_; } } -- 1.7.10.4