FILE / ScuroNeko/mtg

utils/read_full.go

Исходный файл и его история в репозитории.
FILE f48156814bbed345a1c6aaf2e033b87e9fda7c44
Files
mtg/utils/read_full.go
T
2022-08-09 17:41:59 +03:00

23 lines
406 B
Go

package utils
import "io"
const readFullBufferSize = 1024 + 1 // +1 because telegram opreates with blocks mod 4
func ReadFull(src io.Reader) ([]byte, error) {
buf := make([]byte, readFullBufferSize)
n := readFullBufferSize
rv := []byte{}
for n == len(buf) {
n, err := src.Read(buf)
if err != nil {
return nil, err //nolint: wrapcheck
}
rv = append(rv, buf[:n]...)
}
return rv, nil
}