diff options
author | Daniel Veillard <veillard@src.gnome.org> | 2005-06-09 08:18:24 +0000 |
---|---|---|
committer | Daniel Veillard <veillard@src.gnome.org> | 2005-06-09 08:18:24 +0000 |
commit | 365cf67ff812caf2f3edc7c52955c4ffa8fb2597 (patch) | |
tree | 44ec1eda460c87c18751258ace907776aefbbcfb /parser.c | |
parent | d892557d993be0ae7d1d5c817fbec680844b30db (diff) | |
download | libxml2-365cf67ff812caf2f3edc7c52955c4ffa8fb2597.tar.gz |
applied patch from Malcolm Rowe to avoid namespace troubles on rollback
* parser.c: applied patch from Malcolm Rowe to avoid namespace
troubles on rollback parsing of elements start #304761
* test/nsclean.xml result/noent/nsclean.xml result/nsclean.xml*:
added it to the regression tests.
Daniel
Diffstat (limited to 'parser.c')
-rw-r--r-- | parser.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -7535,6 +7535,7 @@ xmlParseStartTag2(xmlParserCtxtPtr ctxt, const xmlChar **pref, int i, j, nbNs, attval; const xmlChar *base; unsigned long cur; + int nsNr = ctxt->nsNr; if (RAW != '<') return(NULL); NEXT1; @@ -7555,6 +7556,8 @@ reparse: nbdef = 0; nbNs = 0; attval = 0; + /* Forget any namespaces added during an earlier parse of this element. */ + ctxt->nsNr = nsNr; localname = xmlParseQName(ctxt, &prefix); if (localname == NULL) { |