X-Git-Url: https://git.madduck.net/code/myrepos.git/blobdiff_plain/85ecfb40a19334d7ea53de8b982915eff3cae07d..8fcd326aac78ce67b3b9ffc43f726c01e1cfe52b:/mr diff --git a/mr b/mr index b5d5c11..1f01803 100755 --- a/mr +++ b/mr @@ -791,7 +791,9 @@ sub repodir { my $repo=shift; my $topdir=$repo->{topdir}; my $subdir=$repo->{subdir}; - return abs_path(($subdir =~/^\//) ? $subdir : $topdir.$subdir); + my $ret=($subdir =~/^\//) ? $subdir : $topdir.$subdir; + $ret=~s/\/\.$//; + return $ret; } # figure out which repos to act on @@ -1035,6 +1037,12 @@ sub loadconfig { } } $section=expandenv($section) if $trusted; + if ($section ne 'ALIAS' && + ! exists $config{$dir}{$section} && + exists $config{$dir}{DEFAULT}) { + # copy in defaults + $config{$dir}{$section}={ %{$config{$dir}{DEFAULT}} }; + } } elsif (/^(\w+)\s*=\s*(.*)/) { my $parameter=$1; @@ -1071,12 +1079,6 @@ sub loadconfig { if (! defined $section) { die "$f line $.: parameter ($parameter) not in section\n"; } - if ($section ne 'ALIAS' && - ! exists $config{$dir}{$section} && - exists $config{$dir}{DEFAULT}) { - # copy in defaults - $config{$dir}{$section}={ %{$config{$dir}{DEFAULT}} }; - } if ($section eq 'ALIAS') { $alias{$parameter}=$value; } @@ -1357,7 +1359,7 @@ sub bootstrap { eval q{use File::Temp}; die $@ if $@; my $tmpconfig=File::Temp->new(); - my @curlargs = ("curl", "-A", "mr", "-s", $url, "-o", $tmpconfig); + my @curlargs = ("curl", "-A", "mr", "-L", "-s", $url, "-o", $tmpconfig); push(@curlargs, "-k") if $insecure; my $curlstatus = system(@curlargs); die "mr bootstrap: invalid SSL certificate for $url (consider -k)\n" if $curlstatus >> 8 == 60; @@ -1545,10 +1547,10 @@ lib = fi delta=`perl -wle 'print -f shift() ? int((-M _) * 24) : 9999' "$flagfile"` if [ "$delta" -lt "$2" ]; then - exit 0 + return 1 else touch "$flagfile" - exit 1 + return 0 fi }