Skip to content
This repository was archived by the owner on Sep 11, 2020. It is now read-only.

Commit 65bf694

Browse files
authored
Merge pull request #442 from ajnavarro/fix/stackoverflow
internal/dotgit: rewrite code to avoid stackoverflow errors
2 parents dfd68a1 + 76281a5 commit 65bf694

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

storage/filesystem/internal/dotgit/writers.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -190,14 +190,14 @@ func (s *syncedReader) Write(p []byte) (n int, err error) {
190190
func (s *syncedReader) Read(p []byte) (n int, err error) {
191191
defer func() { atomic.AddUint64(&s.read, uint64(n)) }()
192192

193-
s.sleep()
194-
n, err = s.r.Read(p)
195-
if err == io.EOF && !s.isDone() {
196-
if n == 0 {
197-
return s.Read(p)
193+
for {
194+
s.sleep()
195+
n, err = s.r.Read(p)
196+
if err == io.EOF && !s.isDone() && n == 0 {
197+
continue
198198
}
199199

200-
return n, nil
200+
break
201201
}
202202

203203
return

0 commit comments

Comments
 (0)