diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-10-09 19:50:16 +0100 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-10-10 01:01:11 +0100 |
commit | afee8943fd120d9f99b3a5890cf2625e12815f5d (patch) | |
tree | 9b2c8bf3cde5f2d10c76909397f317ccbcbcec85 | |
parent | 1d4cb805d52d1924bedf9b0e8bb19df0e897ea3e (diff) |
dgit: Better error message if non-split-brain patch stack no longer applies
(due to new upstream version, or user messing with it). Closes:#833025.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rw-r--r-- | debian/changelog | 3 | ||||
-rwxr-xr-x | dgit | 13 |
2 files changed, 14 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog index 8c3311a..f836390 100644 --- a/debian/changelog +++ b/debian/changelog @@ -44,6 +44,9 @@ dgit (1.5~~) unstable; urgency=medium * New tag format (for dgit view) archive/debian/VERSION. * Before committing to push, check that .dsc and .changes correspond. Closes:#800060. + * Better error message if non-split-brain patch stack no longer + applies (due to new upstream version, or user messing with it). + Closes:#833025. Infrastructure: * Better error handling in dgit-repos-policy-debian. @@ -4456,8 +4456,17 @@ sub quilt_fixup_multipatch ($$$) { ensuredir '.pc'; - runcmd qw(sh -ec), - 'exec dpkg-source --before-build . >/dev/null'; + my @bbcmd = (qw(sh -ec), 'exec dpkg-source --before-build . >/dev/null'); + $!=0; $?=-1; + if (system @bbcmd) { + failedcmd @bbcmd if $? < 0; + fail <<END; +failed to apply your git tree's patch stack (from debian/patches/) to + the corresponding upstream tarball(s). Your source tree and .orig + are probably too inconsistent. dgit can only fix up certain kinds of + anomaly (depending on the quilt mode). See --quilt= in dgit(1). +END + } changedir '..'; |