aboutsummaryrefslogtreecommitdiff
path: root/src/encoding/xml/xml.go
diff options
context:
space:
mode:
authorSam Whited <sam@samwhited.com>2017-10-13 22:28:57 -0500
committerIan Lance Taylor <iant@golang.org>2017-10-30 18:52:19 +0000
commitbe08ddbfcd855fd13cf80497921ae53d2b64a7b1 (patch)
tree95363782670ce02c3edf907223addf04fbf2f8bf /src/encoding/xml/xml.go
parent01c144c410b09d8b56d40e7e9c54fface204aa29 (diff)
downloadgo-be08ddbfcd855fd13cf80497921ae53d2b64a7b1.tar.xz
encoding/xml: don't panic when custom Unmarshaler sees StartElement
Change-Id: I90aa0a983abd0080f3de75d3340fdb15c1f9ca35 Reviewed-on: https://go-review.googlesource.com/70891 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Sam Whited <sam@samwhited.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src/encoding/xml/xml.go')
-rw-r--r--src/encoding/xml/xml.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/encoding/xml/xml.go b/src/encoding/xml/xml.go
index be90b62c9a..7556d4b876 100644
--- a/src/encoding/xml/xml.go
+++ b/src/encoding/xml/xml.go
@@ -277,9 +277,6 @@ func NewTokenDecoder(t TokenReader) *Decoder {
// If Token encounters an unrecognized name space prefix,
// it uses the prefix as the Space rather than report an error.
func (d *Decoder) Token() (Token, error) {
- if d.t != nil {
- return d.t.Token()
- }
var t Token
var err error
if d.stk != nil && d.stk.kind == stkEOF {
@@ -548,6 +545,9 @@ func (d *Decoder) RawToken() (Token, error) {
}
func (d *Decoder) rawToken() (Token, error) {
+ if d.t != nil {
+ return d.t.Token()
+ }
if d.err != nil {
return nil, d.err
}