bugfix for parsexml module
This commit is contained in:
parent
0ea4b71eec
commit
20962ca50f
2 changed files with 8 additions and 2 deletions
|
|
@ -1,7 +1,7 @@
|
|||
#
|
||||
#
|
||||
# Nimrod's Runtime Library
|
||||
# (c) Copyright 2009 Andreas Rumpf
|
||||
# (c) Copyright 2010 Andreas Rumpf
|
||||
#
|
||||
# See the file "copying.txt", included in this
|
||||
# distribution, for details about the copyright.
|
||||
|
|
@ -89,7 +89,7 @@ type
|
|||
reportComments ## report comments
|
||||
|
||||
TXmlParser* = object of TBaseLexer ## the parser object.
|
||||
a, b: string
|
||||
a, b, c: string
|
||||
kind: TXmlEventKind
|
||||
err: TXmlError
|
||||
state: TParserState
|
||||
|
|
@ -424,6 +424,7 @@ proc parseTag(my: var TXmlParser) =
|
|||
# an attribute follows:
|
||||
my.kind = xmlElementOpen
|
||||
my.state = stateAttr
|
||||
my.c = my.a # save for later
|
||||
else:
|
||||
my.kind = xmlElementStart
|
||||
if my.buf[my.bufpos] == '/' and my.buf[my.bufpos+1] == '>':
|
||||
|
|
@ -597,6 +598,8 @@ proc next*(my: var TXmlParser) =
|
|||
of stateEmptyElementTag:
|
||||
my.state = stateNormal
|
||||
my.kind = xmlElementEnd
|
||||
if not isNil(my.c):
|
||||
my.a = my.c
|
||||
of stateError:
|
||||
my.kind = xmlError
|
||||
my.state = stateNormal
|
||||
|
|
|
|||
|
|
@ -104,5 +104,8 @@ sh build.sh</pre>
|
|||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<bugtest att="value" />
|
||||
|
||||
</html>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue