diff --git a/html.go b/html.go index 319bb94..a685ae5 100644 --- a/html.go +++ b/html.go @@ -651,18 +651,13 @@ func isHtmlTag(tag []byte, tagname string) bool { return false } i++ - for i < len(tag) && isspace(tag[i]) { - i++ - } + i = skipSpace(tag, i) if i < len(tag) && tag[i] == '/' { i++ } - for i < len(tag) && isspace(tag[i]) { - i++ - } - + i = skipSpace(tag, i) j := 0 for ; i < len(tag); i, j = i+1, j+1 { if j >= len(tagname) { @@ -681,6 +676,13 @@ func isHtmlTag(tag []byte, tagname string) bool { return isspace(tag[i]) || tag[i] == '>' } +func skipSpace(tag []byte, i int) int { + for i < len(tag) && isspace(tag[i]) { + i++ + } + return i +} + func doubleSpace(out *bytes.Buffer) { if out.Len() > 0 { out.WriteByte('\n')