MCPcopy Index your code
hub / github.com/maruel/panicparse / fill

Method fill

stack/reader.go:25–51  ·  view source on GitHub ↗

fill reads a new chunk into the buffer.

()

Source from the content-addressed store, hash-verified

23
24// fill reads a new chunk into the buffer.
25func (r *reader) fill() {
26 // Slide existing data to beginning.
27 if r.r > 0 {
28 copy(r.buf[:], r.buf[r.r:r.w])
29 r.w -= r.r
30 r.r = 0
31 }
32 if r.w >= len(r.buf) {
33 panic("tried to fill full buffer")
34 }
35 // Read new data: try a limited number of times.
36 for i := 100; i > 0; i-- {
37 n, err := r.rd.Read(r.buf[r.w:])
38 if n < 0 {
39 panic("reader returned negative count from Read")
40 }
41 r.w += n
42 if err != nil {
43 r.err = err
44 return
45 }
46 if n > 0 {
47 return
48 }
49 }
50 r.err = io.ErrNoProgress
51}
52
53func (r *reader) buffered() []byte {
54 return r.buf[r.r:r.w]

Callers 1

readSliceMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected