aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Receive.pm
diff options
context:
space:
mode:
Diffstat (limited to 'IkiWiki/Receive.pm')
-rw-r--r--IkiWiki/Receive.pm9
1 files changed, 8 insertions, 1 deletions
diff --git a/IkiWiki/Receive.pm b/IkiWiki/Receive.pm
index c73adfbbb..5908e09f9 100644
--- a/IkiWiki/Receive.pm
+++ b/IkiWiki/Receive.pm
@@ -35,10 +35,17 @@ EOF
}
"u != $uid";
} @{$config{untrusted_committers}}).
- ") exit(0);\n";
+ ") {\n";
$ret.=<<"EOF";
+ /* Trusted user.
+ * Consume all stdin before exiting, as git may
+ * otherwise be unhappy. */
+ char buf[256];
+ while (read(0, &buf, 256) != 0) {}
+ exit(0);
+ }
asprintf(&s, "CALLER_UID=%i", u);
newenviron[i++]=s;
}