diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2009-10-24 22:55:44 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2009-10-24 22:55:44 +0200 |
commit | 61f2cebae3baabb2ae895f212ce089ff15cc37d2 (patch) | |
tree | 45816afcd29fae37127dcb795c63091059ac6275 /tools | |
parent | 85512d7f111e9b05446a012567f76472f5d5410c (diff) | |
download | monitoring-plugins-61f2cebae3baabb2ae895f212ce089ff15cc37d2.tar.gz |
git-notify: Check the exit status of pipes
Properly check the exit status of all processes we execute and abort on
error.
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/git-notify | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/tools/git-notify b/tools/git-notify index b10b1bc4..4a0faa5f 100755 --- a/tools/git-notify +++ b/tools/git-notify @@ -309,7 +309,7 @@ sub mail_notification($$$@) } binmode MAIL, ":utf8"; print MAIL join("\n", @text), "\n"; - close MAIL; + close MAIL or die $! ? "Cannot execute $mailer: $!" : "$mailer exited with status: $?"; } } @@ -350,7 +350,7 @@ sub get_object_info($) $info{$1 . "_tz"} = $6; } } - close OBJ; + close OBJ or die $! ? "Cannot execute cat-file: $!" : "cat-file exited with status: $?"; $info{"log"} = \@log; return %info; @@ -388,7 +388,7 @@ sub send_commit_notice($$) open DIFF, "-|" or exec "git", "diff-tree", "-p", "-M", "--no-commit-id", $obj or die "cannot exec git-diff-tree"; my $diff = join("", <DIFF>); - close DIFF; + close DIFF or die $! ? "Cannot execute diff-tree: $!" : "diff-tree exited with status: $?"; return if length($diff) == 0; @@ -419,7 +419,7 @@ sub send_commit_notice($$) open STAT, "-|" or exec "git", "diff-tree", "--stat", "-M", "--no-commit-id", $obj or die "cannot exec git-diff-tree"; push @notice, join("", <STAT>); - close STAT; + close STAT or die $! ? "Cannot execute diff-tree: $!" : "diff-tree exited with status: $?"; if (($max_diff_size == -1) || (length($diff) < $max_diff_size)) { @@ -479,7 +479,7 @@ sub send_cia_notice($$) push @cia_text, " <file action=\"rename\" to=\"" . xml_escape($new) . "\">" . xml_escape($old) . "</file>"; } } - close COMMIT; + close COMMIT or die $! ? "Cannot execute diff-tree: $!" : "diff-tree exited with status: $?"; push @cia_text, " </files>", |