Comment 1 for bug 332063

Revision history for this message
Michael Haubenwallner (d2m) wrote :

Fix:

In zope.publisher.xmlrpc.XMLRPCRequest.processInputs
replace
    lines = ''.join(self._body_instream.readlines())
by
    lines = ''.join(self._body_instream.readlines(self._body_instream.size))

works with both zopectl (twisted) and paster setup

The problem is with the signature of zope.publisher.http.HTTPInputStream.readlines:

    def readlines(self, hint=0):
        data = self.stream.readlines(hint)
        self.cacheStream.write(''.join(data))
        return data

Apparently reading 0 from twisted's BufferedStream works, but fails on wsgi.input <socket._fileobject object>

How to proceed - should we create a new zope.publisher release and change groks versions.cfg?