[reportlab-users] pyRXP - strange non-deterministic errors on python 2.7 and 64-bit Linux
Robin Becker
robin at reportlab.com
Mon May 16 10:46:29 EDT 2011
On 16/05/2011 15:27, Roger Whittaker wrote:
> On Mon, May 16, 2011 at 10:01:26AM +0100, Robin Becker wrote:
>
>> Another approach might be to try passing an entity opening callback
>> into the parser that could be used to try and see what information
>> is being parsed to obtain the entity.
>
> Using your code
>
> $ cat withcallback.py
> #! /usr/bin/env python
> from pyRXP import Parser
> infile = open(argv[1], 'r').read()
> p = Parser()
> def eoCB(entity):
> print 'eoCB(%r)' % entity
> return entity
> parsed = p.parse(infile,eoCB=eoCB)
>
> roger at snark: /tmp/abcd $ ./withcallback.py foo.xml
> eoCB('./test.dtd')
> eoCB('./first-file.xml')
> eoCB('./second-longer-file.xml')
> /tmp/abcd/secondonger-fifile.xml: No such file or directory
> Traceback (most recent call last):
> File "./withcallback.py", line 9, in<module>
> parsed = p.parse(infile,eoCB=eoCB)
> pyRXP.error: Error: Couldn't open entity b, file:///tmp/abcd/secondonger-fifile.xml
> in unnamed entity at line 10 char 8 of [unknown]
> Couldn't open entity b, file:///tmp/abcd/secondonger-fifile.xml
> Parse Failed!
>
>
So we're being passed a normal 8 bit string that looks right and return that to
the entity opening code in rxp and that appears to fall down with a messed up
filename. At first site it almost looks like stuff is being written in a strange
way ie we have a mix of bits from first-file.xml & second-longer-file.xml.
Can you say exactly which version of ubuntu is being used? I'll need to make up
an equivalent virtual machine to make any sense of this. I can do x64, but have
no spare machine for a full install. I guess we are fixed on python 2.7 and some
version of gcc, but if that's not standard with the install I'll need to upgrade
etc etc.
--
Robin Becker
More information about the reportlab-users
mailing list