Fix document parse() error handling

D'oh - I forgot to set the returned *Document when we panic.
This commit is contained in:
Niklas Fasching 2018-12-19 19:45:54 +01:00
parent cbcdd4f923
commit 3ccbbc46ff

View file

@ -100,10 +100,11 @@ func (d *Document) Write(w Writer) (out string, err error) {
return w.String(), err return w.String(), err
} }
func (d *Document) Parse(input io.Reader) *Document { func (dIn *Document) Parse(input io.Reader) (d *Document) {
d = dIn
defer func() { defer func() {
if err := recover(); err != nil { if recovered := recover(); recovered != nil {
d.Error = fmt.Errorf("could not parse input: %s", err) d.Error = fmt.Errorf("could not parse input: %v", recovered)
} }
}() }()
if d.tokens != nil { if d.tokens != nil {