Staging
v0.8.1
https://github.com/python/cpython
Revision 62decc9f4966c060a3d4bcf762d8940d666496c5 authored by Tim Peters on 02 August 2006, 04:12:36 UTC, committed by Tim Peters on 02 August 2006, 04:12:36 UTC
buildbot (& possibly other 64-bit boxes) during test_gzip.

The native zlib crc32 function returns an unsigned 32-bit integer,
which the Python wrapper implicitly casts to C long.  Therefore the
same crc can "look negative" on a 32-bit box but "look positive" on
a 64-bit box.  This patch papers over that platform difference when
writing the crc to file.

It may be better to change the Python wrapper, either to make
the result "look positive" on all platforms (which means it may
have to return a Python long at times on a 32-bit box), or to
keep the sign the same across boxes.  But that would be a visible
change in what users see, while the current hack changes no
visible behavior (well, apart from stopping the struct deprecation
warning).

Note that the module-level write32() function is no longer used.
1 parent 4edcba6
History
Tip revision: 62decc9f4966c060a3d4bcf762d8940d666496c5 authored by Tim Peters on 02 August 2006, 04:12:36 UTC
Try to squash struct.pack warnings on the "amd64 gentoo trunk"
Tip revision: 62decc9
File Mode Size
Python-ast.h -rw-r--r-- 15.3 KB
Python.h -rw-r--r-- 4.1 KB
abstract.h -rw-r--r-- 37.4 KB
asdl.h -rw-r--r-- 1.1 KB
ast.h -rw-r--r-- 230 bytes
bitset.h -rw-r--r-- 792 bytes
boolobject.h -rw-r--r-- 914 bytes
bufferobject.h -rw-r--r-- 924 bytes
cStringIO.h -rw-r--r-- 2.0 KB
cellobject.h -rw-r--r-- 653 bytes
ceval.h -rw-r--r-- 4.8 KB
classobject.h -rw-r--r-- 2.8 KB
cobject.h -rw-r--r-- 1.7 KB
code.h -rw-r--r-- 3.2 KB
codecs.h -rw-r--r-- 4.9 KB
compile.h -rw-r--r-- 1.0 KB
complexobject.h -rw-r--r-- 1.4 KB
datetime.h -rw-r--r-- 8.1 KB
descrobject.h -rw-r--r-- 2.1 KB
dictobject.h -rw-r--r-- 5.4 KB
enumobject.h -rw-r--r-- 253 bytes
errcode.h -rw-r--r-- 1.3 KB
eval.h -rw-r--r-- 557 bytes
fileobject.h -rw-r--r-- 2.2 KB
floatobject.h -rw-r--r-- 4.1 KB
frameobject.h -rw-r--r-- 2.8 KB
funcobject.h -rw-r--r-- 2.9 KB
genobject.h -rw-r--r-- 823 bytes
graminit.h -rw-r--r-- 1.8 KB
grammar.h -rw-r--r-- 2.0 KB
import.h -rw-r--r-- 2.0 KB
intobject.h -rw-r--r-- 2.1 KB
intrcheck.h -rw-r--r-- 274 bytes
iterobject.h -rw-r--r-- 526 bytes
listobject.h -rw-r--r-- 2.5 KB
longintrepr.h -rw-r--r-- 2.1 KB
longobject.h -rw-r--r-- 4.7 KB
marshal.h -rw-r--r-- 713 bytes
metagrammar.h -rw-r--r-- 253 bytes
methodobject.h -rw-r--r-- 3.1 KB
modsupport.h -rw-r--r-- 4.7 KB
moduleobject.h -rw-r--r-- 611 bytes
node.h -rw-r--r-- 890 bytes
object.h -rw-r--r-- 31.5 KB
objimpl.h -rw-r--r-- 12.1 KB
opcode.h -rw-r--r-- 4.2 KB
osdefs.h -rw-r--r-- 942 bytes
parsetok.h -rw-r--r-- 1.3 KB
patchlevel.h -rw-r--r-- 1.3 KB
pgen.h -rw-r--r-- 253 bytes
pgenheaders.h -rw-r--r-- 1.1 KB
py_curses.h -rw-r--r-- 4.1 KB
pyarena.h -rw-r--r-- 2.6 KB
pydebug.h -rw-r--r-- 1.0 KB
pyerrors.h -rw-r--r-- 11.3 KB
pyexpat.h -rw-r--r-- 1.9 KB
pyfpe.h -rw-r--r-- 8.3 KB
pygetopt.h -rw-r--r-- 306 bytes
pymactoolbox.h -rw-r--r-- 7.2 KB
pymem.h -rw-r--r-- 3.7 KB
pyport.h -rw-r--r-- 23.7 KB
pystate.h -rw-r--r-- 6.0 KB
pystrtod.h -rw-r--r-- 359 bytes
pythonrun.h -rw-r--r-- 6.3 KB
pythread.h -rw-r--r-- 1.3 KB
rangeobject.h -rw-r--r-- 648 bytes
setobject.h -rw-r--r-- 2.6 KB
sliceobject.h -rw-r--r-- 1.3 KB
stringobject.h -rw-r--r-- 6.5 KB
structmember.h -rw-r--r-- 2.5 KB
structseq.h -rw-r--r-- 862 bytes
symtable.h -rw-r--r-- 3.8 KB
sysmodule.h -rw-r--r-- 819 bytes
timefuncs.h -rw-r--r-- 442 bytes
token.h -rw-r--r-- 1.7 KB
traceback.h -rw-r--r-- 624 bytes
tupleobject.h -rw-r--r-- 2.0 KB
ucnhash.h -rw-r--r-- 861 bytes
unicodeobject.h -rw-r--r-- 43.1 KB
weakrefobject.h -rw-r--r-- 2.4 KB

back to top