On 7/12/05, Phillip J. Eby <pje@telecommunity.com> wrote:
But even then, things are going odd, as if I try to build an egg for ctypes (which isn't zip-safe) all of the files and subdirectories in the egg directory are missing the first two characters... Hmm, it happens with zip-safe eggs, as well, so I don't know - maybe it's related to the bdist_wininst unpacking code. Sorry, I can't debug this any further.
And I can't reproduce it. However, I have noticed that the format change for Python 2.4 includes a change to what data is in the 'cfgdata' string, and so I changed this line:
cfg.readfp(StringIO.StringIO(f.read(cfglen)))
to read:
cfg.readfp(StringIO.StringIO(f.read(cfglen).split(chr(0),1)[0]))
In order to ignore anything after the first NUL character in the cfgdata. I don't know if that was causing your two-character problem or not, as I can't reproduce it with Python 2.4 and the ctypes .exe for Python 2.4.
Looks like that fixed the problem. Thanks.
After the first thousand levels of recursion, the time machine throws a RuntimeError("Paradox stablization loop limit exceeded") and kicks me back to the present. :)
So *that's* why Guido resists implementing tail-call optimisation! :-) Paul