chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
325bc21
)
dgit-repos-server: pre-receive hook sends errors to recorderror
author
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Wed, 29 Jan 2014 19:06:30 +0000
(19:06 +0000)
committer
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Wed, 5 Mar 2014 18:29:06 +0000
(18:29 +0000)
dgit-repos-server
patch
|
blob
|
history
diff --git
a/dgit-repos-server
b/dgit-repos-server
index 6acd6894f0eae552b82dbb542761c712612a2f05..57cb5be11d2d07d5a26e6c01ed299e9ed71e136a 100755
(executable)
--- a/
dgit-repos-server
+++ b/
dgit-repos-server
@@
-153,6
+153,7
@@
sub recorderror ($) {
my ($why) = @_;
my $w = $ENV{'DGIT_DRS_WORK'}; # we are in stunthook
if (defined $w) {
+ chomp $why;
open ERR, ">", "$w/drs-error" or die $!;
print ERR $why, "\n" or die $!;
close ERR or die $!;
@@
-544,7
+545,13
@@
sub parseargsdispatch () {
defined($destrepo = $ENV{'DGIT_DRS_DEST'}) or die;
defined($keyrings = $ENV{'DGIT_DRS_KEYRINGS'}) or die $!;
open STDOUT, ">&STDERR" or die $!;
- stunthook();
+ eval {
+ stunthook();
+ };
+ if ($@) {
+ recorderror "$@" or die;
+ die $@;
+ }
exit 0;
}