X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=dgit;h=3591231fba1ce27d8c1673f1a889ee0240d4c40e;hb=67a5c76a1ca22f119a6b316faddb0cb3767060b7;hp=6b961f5d7f271da70c3952dd19ea972e9e882767;hpb=0f37a4cac41ca7dc266b9e9af877f0d6a6e49b01;p=dgit.git diff --git a/dgit b/dgit index 6b961f5d..3591231f 100755 --- a/dgit +++ b/dgit @@ -5805,7 +5805,9 @@ sub quilt_fixup_singlepatch ($$$) { changedir ".."; runcmd @dpkgsource, qw(-x), (srcfn $version, ".dsc"); rename srcfn("$upstreamversion", "/debian/patches"), - "work/debian/patches"; + "work/debian/patches" + or $!==ENOENT + or confess "install d/patches: $!"; changedir "work"; commit_quilty_patch(); @@ -6601,8 +6603,8 @@ sub build_source { my $mv = sub { my ($why, $l) = @_; printdebug " renaming ($why) $l\n"; - rename "$l", bpd_abs()."/$l" - or fail f_ "put in place new built file (%s): %s", $l, $!; + rename_link_xf 0, "$l", bpd_abs()."/$l" + or fail f_ "put in place new built file (%s): %s", $l, $@; }; foreach my $l (split /\n/, getfield $dsc, 'Files') { $l =~ m/\S+$/ or next; @@ -7374,7 +7376,10 @@ $cmd =~ y/-/_/; my $pre_fn = ${*::}{"pre_$cmd"}; $pre_fn->() if $pre_fn; -record_maindir if $invoked_in_git_tree; +if ($invoked_in_git_tree) { + changedir_git_toplevel(); + record_maindir(); +} git_slurp_config(); my $fn = ${*::}{"cmd_$cmd"};