From: Kurt M. <re...@bu...> - 2009-12-14 05:08:10
|
New submission from Kurt McKee <con...@ku...>: The xml.sax parser is receiving different read() buffer sizes with each call. This is in contrast to the CPython implementation, which appears to call read() with consistent buffer sizes. The following code demonstrates the issue (I can't seem to create attachments, sorry): import xml.sax import StringIO class Catcher(StringIO.StringIO): def read(self, size): print size return StringIO.StringIO.read(self, size) s = """<?xml version="1.0"?>\n<root version="2.0"/>""" handler = xml.sax.handler.ContentHandler() parser = xml.sax.make_parser() parser.setContentHandler(handler) parser.parse(Catcher(s)) Python 2.6 prints """ 65516 65516 """ Jython 2.5.1 prints """ 1 1 1 1 28 8188 8192 """ I read through the Jython xml.sax module source code but couldn't figure out why this was happening. ---------- messages: 5376 nosy: kurtmckee severity: normal status: open title: xml.sax parser receiving inconsistent read() buffer sizes type: behaviour _______________________________________ Jython tracker <re...@bu...> <http://bugs.jython.org/issue1523> _______________________________________ |