diff options
-rwxr-xr-x | dgit | 19 |
1 files changed, 16 insertions, 3 deletions
@@ -6230,6 +6230,10 @@ sub clean_tree () { } } +sub clean_tree_check () { + # Not yet implemented. The lack of this is part of #910705. +} + sub cmd_clean () { badusage __ "clean takes no additional arguments" if @ARGV; notpushing(); @@ -6262,9 +6266,18 @@ sub build_prep_early () { sub build_prep ($) { my ($wantsrc) = @_; build_prep_early(); - # clean the tree if we're trying to include dirty changes in the - # source package, or we are running the builder in $maindir - clean_tree() if $includedirty || ($wantsrc & WANTSRC_BUILDER); + if (!building_source_in_playtree() || ($wantsrc & WANTSRC_BUILDER)) { + # Clean the tree because we're going to use the contents of + # $maindir. (We trying to include dirty changes in the source + # package, or we are running the builder in $maindir.) + clean_tree(); + } else { + # We don't actually need to do anything in $maindir, but we + # should do some kind of cleanliness check because (i) the + # user may have forgotten a `git add', and (ii) if the user + # said -wc we should still do the check. + clean_tree_check(); + } build_maybe_quilt_fixup(); if ($rmchanges) { my $pat = changespat $version; |