diff --git a/gotenv.go b/gotenv.go index 8e7c281..eddad3a 100644 --- a/gotenv.go +++ b/gotenv.go @@ -267,7 +267,7 @@ func strictParse(r io.Reader, override bool) (Env, error) { } } - return env, nil + return env, scanner.Err() } var ( diff --git a/gotenv_test.go b/gotenv_test.go index dc8b3b9..b566b38 100644 --- a/gotenv_test.go +++ b/gotenv_test.go @@ -255,6 +255,19 @@ func TestStrictParse_PassThroughErrors(t *testing.T) { assert.Error(t, err) } +type infiniteReader struct { + io.Reader +} + +func (er infiniteReader) Read(p []byte) (n int, err error) { + return len(p), nil +} + +func TestStrictParse_NoTokenPassThroughErrors(t *testing.T) { + _, err := gotenv.StrictParse(&infiniteReader{}) + assert.Error(t, err) +} + func TestRead(t *testing.T) { for _, tt := range fixtures { env, err := gotenv.Read(tt.filename)