d.err = d.syntaxError("element <" + s.name.Local + "> closed by </" + name.Local + ">")
                return false
        case s.name.Space != name.Space:
+               ns := name.Space
+               if name.Space == "" {
+                       ns = `""`
+               }
                d.err = d.syntaxError("element <" + s.name.Local + "> in space " + s.name.Space +
-                       " closed by </" + name.Local + "> in space " + name.Space)
+                       " closed by </" + name.Local + "> in space " + ns)
                return false
        }
 
 
                {withDefaultHeader(`<!- not ok -->`), `invalid sequence <!- not part of <!--`},
                {withDefaultHeader(`<!-? not ok -->`), `invalid sequence <!- not part of <!--`},
                {withDefaultHeader(`<![not ok]>`), `invalid <![ sequence`},
+               {withDefaultHeader(`<zzz:foo xmlns:zzz="http://example.com"><bar>baz</bar></foo>`),
+                       `element <foo> in space zzz closed by </foo> in space ""`},
                {withDefaultHeader("\xf1"), `invalid UTF-8`},
 
                // Header-related errors.
                        continue
                }
                if !strings.Contains(err.Error(), test.err) {
-                       t.Errorf("parse %s: can't find %q error sudbstring\nerror: %q", test.src, test.err, err)
+                       t.Errorf("parse %s: can't find %q error substring\nerror: %q", test.src, test.err, err)
                        continue
                }
        }