$debugprefix *debuglevel *DEBUG
shellquote printcmd messagequote
$negate_harmful_gitattrs
- git_slurp_config_src
+ changedir git_slurp_config_src
workarea_setup
fresh_workarea in_workarea);
# implicitly uses $main::us
}
}
+sub changedir ($) {
+ my ($newdir) = @_;
+ printdebug "CD $newdir\n";
+ chdir $newdir or confess "chdir: $newdir: $!";
+}
+
sub git_slurp_config_src ($) {
my ($src) = @_;
# returns $r such that $r->{KEY}[] = VALUE
# $twa should be relative paths of the form .git/FOO/BAR
my ($twa) = @_;
$twa //= $wa;
- chdir $twa or die "$twa $!";
+ changedir $twa or die "$twa $!";
my $r = eval { $sub->($twa); };
- chdir '../../..' or die "$@; $!";
+ changedir '../../..' or die "$@; $!";
die $@ if length $@;
return $r;
}