diff --git a/pkg/utils/io.go b/pkg/utils/io.go index d31c5fc07..98d026429 100644 --- a/pkg/utils/io.go +++ b/pkg/utils/io.go @@ -2,6 +2,7 @@ package utils import ( "bufio" + "io" "os" ) @@ -12,14 +13,18 @@ func ForEachLineInFile(path string, f func(string, int)) error { } defer file.Close() - reader := bufio.NewReader(file) + forEachLineInStream(file, f) + + return nil +} + +func forEachLineInStream(reader io.Reader, f func(string, int)) { + bufferedReader := bufio.NewReader(reader) for i := 0; true; i++ { - line, err := reader.ReadString('\n') + line, err := bufferedReader.ReadString('\n') if err != nil { break } f(line, i) } - - return nil }