debian-mirror-gitlab/workhorse/internal/upload/destination/reader.go
2022-05-07 20:08:51 +05:30

17 lines
257 B
Go

package destination
import "io"
type hardLimitReader struct {
r io.Reader
n int64
}
func (h *hardLimitReader) Read(p []byte) (int, error) {
nRead, err := h.r.Read(p)
h.n -= int64(nRead)
if h.n < 0 {
err = ErrEntityTooLarge
}
return nRead, err
}