make reporting unbalanced tags an overridable method
diff --git a/Lib/sgmllib.py b/Lib/sgmllib.py
index 17e5745..2c92c31 100644
--- a/Lib/sgmllib.py
+++ b/Lib/sgmllib.py
@@ -226,8 +226,8 @@
if self.stack and self.stack[-1] == tag:
del self.stack[-1]
else:
- print '*** Unbalanced </' + tag + '>'
- print '*** Stack:', self.stack
+ self.report_unbalanced(tag)
+ # Now repair it
found = None
for i in range(len(self.stack)):
if self.stack[i] == tag: found = i
@@ -235,6 +235,11 @@
del self.stack[found:]
method()
+ # Example -- report an unbalanced </...> tag.
+ def report_unbalanced(self, tag):
+ print '*** Unbalanced </' + tag + '>'
+ print '*** Stack:', self.stack
+
# Example -- handle character reference, no need to override
def handle_charref(self, name):
try: