Preliminary debug state

This commit is contained in:
9seconds
2018-07-06 17:29:24 +03:00
parent 88faeb7195
commit a3933e6ede
21 changed files with 127 additions and 57 deletions
+10 -2
View File
@@ -1,11 +1,19 @@
package wrappers
import "bytes"
import (
"bytes"
"github.com/juju/errors"
)
type BufferedReader struct {
Buffer *bytes.Buffer
}
var (
BufferedReaderContinue = errors.New("Please continue reading")
)
func (b *BufferedReader) BufferedRead(p []byte, callback func() error) (int, error) {
if b.Buffer.Len() > 0 {
return b.flush(p)
@@ -17,7 +25,7 @@ func (b *BufferedReader) BufferedRead(p []byte, callback func() error) (int, err
}
func (b *BufferedReader) flush(p []byte) (int, error) {
if b.Buffer.Len() < len(p) {
if b.Buffer.Len() <= len(p) {
sizeToReturn := b.Buffer.Len()
copy(p, b.Buffer.Bytes())
b.Buffer.Reset()