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 /dgit | |
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>
Diffstat (limited to 'dgit')
-rwxr-xr-x | dgit | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -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 '..'; |