summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess2017-06-18 17:36:17 -0400
committerJoey Hess2017-06-18 17:36:17 -0400
commit8c24ee55c79b0bdbd82e284eae71c4701209afa3 (patch)
tree2e282944da98e17a4b1a4f572e6e2f342ed161fb
parent4b003643d60c9779607f1048035e9e9364bcda90 (diff)
propellor spin
-rw-r--r--doc/todo/spin_failure_HEAD.mdwn15
1 files changed, 13 insertions, 2 deletions
diff --git a/doc/todo/spin_failure_HEAD.mdwn b/doc/todo/spin_failure_HEAD.mdwn
index 981e775c..ad90be2e 100644
--- a/doc/todo/spin_failure_HEAD.mdwn
+++ b/doc/todo/spin_failure_HEAD.mdwn
@@ -103,5 +103,16 @@ Sending privdata (73139 bytes) to kite.kitenet.net ... done
> > a line from stdin, and it got the first line of the protocol.
> > So the data is being sent over the ssh connection ok, and
> > the mangling must happening after that point and before gitPushHelper.
-> > ... Could it be that git fetch itself is eating some of stdin? Or
-> > that "propellor --gitpush" is before it runs gitPushHelper?
+> >
+> > Aha! The problem seems to come from using dup and closing stdin!
+
+ req NeedGitPush gitPushMarker $ \_ -> do
+ hin <- dup stdInput
+ hout <- dup stdOutput
+ hClose stdin
+ hClose stdout
+
+> > A line read from stdin just before the dup gets the first line of the protocol
+> > as expected. A line read from hin afterwards does not. Could
+> > it be that multiple lines get read from stdin and buffered, and
+> > so are not available in the dupped handle?