X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=Debian%2FDgit.pm;h=5b5591d5499695def37c47f023a00f854bfa1738;hb=4523f77bba9b97925030bcf641584a4a74819178;hp=dcecbd1a840e7f0c7718b398d585e2e4d4e3fe77;hpb=18413810f983efbd083a2fd0cbc2c2cbbadc558b;p=dgit.git diff --git a/Debian/Dgit.pm b/Debian/Dgit.pm index dcecbd1a..5b5591d5 100644 --- a/Debian/Dgit.pm +++ b/Debian/Dgit.pm @@ -45,7 +45,7 @@ BEGIN { fail ensuredir executable_on_path waitstatusmsg failedcmd_waitstatus failedcmd_report_cmd failedcmd - cmdoutput cmdoutput_errok + runcmd cmdoutput cmdoutput_errok git_rev_parse git_cat_file git_get_ref git_for_each_ref git_for_each_tag_referring is_fast_fwd @@ -276,6 +276,12 @@ sub failedcmd { fail failedcmd_waitstatus(); } +sub runcmd { + debugcmd "+",@_; + $!=0; $?=-1; + failedcmd @_ if system @_; +} + sub cmdoutput_errok { confess Dumper(\@_)." ?" if grep { !defined } @_; debugcmd "|",@_;