Revision fbb95f28 Ganeti/HTools/Luxi.hs
b/Ganeti/HTools/Luxi.hs | ||
---|---|---|
133 | 133 |
let _recv obuf = do |
134 | 134 |
nbuf <- withTimeout queryTimeout "reading luxi response" $ |
135 | 135 |
S.recv (socket s) 4096 |
136 |
let (msg, rbuf) = break ((==) eOM) (obuf ++ nbuf)
|
|
137 |
(if null rbuf
|
|
136 |
let (msg, remaining) = break ((==) eOM) (obuf ++ nbuf)
|
|
137 |
(if null remaining
|
|
138 | 138 |
then _recv msg |
139 |
else return (msg, drop 1 rbuf))
|
|
139 |
else return (msg, tail remaining))
|
|
140 | 140 |
cbuf <- readIORef $ rbuf s |
141 | 141 |
(msg, nbuf) <- _recv cbuf |
142 | 142 |
writeIORef (rbuf s) nbuf |
Also available in: Unified diff