diff --git a/viper.go b/viper.go index 8bc4438..09bebb4 100644 --- a/viper.go +++ b/viper.go @@ -1793,7 +1793,9 @@ func (v *Viper) writeConfig(filename string, force bool) error { func (v *Viper) unmarshalReader(in io.Reader, c map[string]any) error { buf := new(bytes.Buffer) - buf.ReadFrom(in) + if _, err := buf.ReadFrom(in); err != nil { + return ConfigParseError{err} + } switch format := strings.ToLower(v.getConfigType()); format { case "yaml", "yml", "json", "toml", "hcl", "tfvars", "ini", "properties", "props", "prop", "dotenv", "env":