Skip to content

Commit 3d1a3e9

Browse files
authored
Merge pull request #9 from muktihari/fix/parse-dtd-end-tag
fix: parse DTD end tag should not be strict
2 parents 92d074c + 54f76cc commit 3d1a3e9

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

tokenizer.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,9 @@ func (t *Tokenizer) RawToken() (b []byte, err error) {
175175
if i >= t.last {
176176
prevLast := t.last
177177
off, i = t.memmoveRemainingBytes(off)
178-
dtdOff = dtdOff - (prevLast - t.last)
178+
if dtdOff != 0 {
179+
dtdOff = dtdOff - (prevLast - t.last)
180+
}
179181
if err = t.manageBuffer(); err != nil {
180182
t.err = err
181183
break
@@ -193,7 +195,7 @@ func (t *Tokenizer) RawToken() (b []byte, err error) {
193195
case ']':
194196
dtdOff = i
195197
case '>':
196-
if dtdOff == i-1 && t.buf[dtdOff] == ']' {
198+
if t.buf[dtdOff] == ']' {
197199
buf := trim(t.buf[off : i+1 : cap(t.buf)])
198200
t.cur = i + 1
199201
return buf, err

0 commit comments

Comments
 (0)