Skip to content

Commit f7bb798

Browse files
committed
sax: Implement method xml.sax.expatreader.ExpatParser.flush
1 parent 7bde825 commit f7bb798

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

Lib/xml/sax/expatreader.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,22 @@ def feed(self, data, isFinal=False):
214214
# FIXME: when to invoke error()?
215215
self._err_handler.fatalError(exc)
216216

217+
def flush(self):
218+
if self._parser is None:
219+
return
220+
221+
if not self._parser.GetReparseDeferralEnabled():
222+
return
223+
224+
self._parser.SetReparseDeferralEnabled(False)
225+
try:
226+
self._parser.Parse(b"", False)
227+
except expat.error as e:
228+
exc = SAXParseException(expat.ErrorString(e.code), e, self)
229+
self._err_handler.fatalError(exc)
230+
finally:
231+
self._parser.SetReparseDeferralEnabled(True)
232+
217233
def _close_source(self):
218234
source = self._source
219235
try:

0 commit comments

Comments
 (0)