(p []byte)
| 157 | } |
| 158 | |
| 159 | func (b *PtyBuffer) Read(p []byte) (n int, err error) { |
| 160 | b.CVar.L.Lock() |
| 161 | defer b.CVar.L.Unlock() |
| 162 | for b.DataBuf.Len() == 0 { |
| 163 | if b.Err != nil { |
| 164 | return 0, b.Err |
| 165 | } |
| 166 | if b.AtEOF { |
| 167 | return 0, io.EOF |
| 168 | } |
| 169 | b.CVar.Wait() |
| 170 | } |
| 171 | b.CVar.Broadcast() |
| 172 | return b.DataBuf.Read(p) |
| 173 | } |
no test coverage detected