summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/markupbase.py5
-rwxr-xr-xLib/test/test_htmlparser.py2
2 files changed, 5 insertions, 2 deletions
diff --git a/Lib/markupbase.py b/Lib/markupbase.py
index 3d00a74..85b07a2 100644
--- a/Lib/markupbase.py
+++ b/Lib/markupbase.py
@@ -76,13 +76,16 @@ class ParserBase:
rawdata = self.rawdata
j = i + 2
assert rawdata[i:j] == "<!", "unexpected call to parse_declaration"
+ if rawdata[j:j+1] == ">":
+ # the empty comment <!>
+ return j + 1
if rawdata[j:j+1] in ("-", ""):
# Start of comment followed by buffer boundary,
# or just a buffer boundary.
return -1
# A simple, practical version could look like: ((name|stringlit) S*) + '>'
n = len(rawdata)
- if rawdata[j:j+1] == '--': #comment
+ if rawdata[j:j+2] == '--': #comment
# Locate --.*-- as the body of the comment
return self.parse_comment(i)
elif rawdata[j] == '[': #marked section
diff --git a/Lib/test/test_htmlparser.py b/Lib/test/test_htmlparser.py
index 4cb87df..54b90cd 100755
--- a/Lib/test/test_htmlparser.py
+++ b/Lib/test/test_htmlparser.py
@@ -115,7 +115,7 @@ comment1b-->
<Img sRc='Bar' isMAP>sample
text
&#x201C;
-<!--comment2a-- --comment2b-->
+<!--comment2a-- --comment2b--><!>
</Html>
""", [
("data", "\n"),