diff --git a/viper.go b/viper.go index 581cfaa..d9d5e5a 100644 --- a/viper.go +++ b/viper.go @@ -1365,20 +1365,21 @@ func (v *Viper) marshalWriter(f afero.File, configType string) error { } case "toml": - t := toml.TreeFromMap(c) - s := t.String() - _, err := f.WriteString(s) + t, err := toml.TreeFromMap(c) if err != nil { return ConfigMarshalError{err} } + s := t.String() + if _, err := f.WriteString(s); err != nil { + return ConfigMarshalError{err} + } case "yaml", "yml": b, err := yaml.Marshal(c) if err != nil { return ConfigMarshalError{err} } - _, err = f.WriteString(string(b)) - if err != nil { + if _, err = f.WriteString(string(b)); err != nil { return ConfigMarshalError{err} } }