1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2025-12-26 12:05:35 -05:00

refactor buffer

This commit is contained in:
Darien Raymond
2016-12-09 12:08:25 +01:00
parent 7a80409e30
commit 055023fdd5
53 changed files with 220 additions and 284 deletions

View File

@@ -81,7 +81,7 @@ type AuthenticationReader struct {
func NewAuthenticationReader(auth Authenticator, reader io.Reader, aggressive bool) *AuthenticationReader {
return &AuthenticationReader{
auth: auth,
buffer: buf.NewLocalBuffer(32 * 1024),
buffer: buf.NewLocal(32 * 1024),
reader: reader,
aggressive: aggressive,
}
@@ -135,11 +135,11 @@ func (v *AuthenticationReader) EnsureChunk() error {
v.buffer.Clear()
} else {
leftover := v.buffer.Bytes()
v.buffer.SetBytesFunc(func(b []byte) int {
return copy(b, leftover)
v.buffer.Reset(func(b []byte) (int, error) {
return copy(b, leftover), nil
})
}
_, err = v.buffer.FillFrom(v.reader)
err = v.buffer.AppendSupplier(buf.ReadFrom(v.reader))
}
return err
}