diff Python/marshal.c @ 25385:e8891e6952eb 2.2

backport theller's checkin of revision 1.73 of marshal.c Fix SF 588452: debug build crashes on marshal.dumps([128] * 1000). See there for a description. Added test case. Bugfix candidate for 2.2.x, not sure about previous versions: probably low priority, because virtually no one runs debug builds.
author Michael W. Hudson <mwh@python.net>
date Tue, 24 Sep 2002 11:55:54 +0000
parents c555f1e7c4be
children 80ce384d408a
line wrap: on
line diff
--- a/Python/marshal.c	Tue Sep 24 11:53:34 2002 +0000
+++ b/Python/marshal.c	Tue Sep 24 11:55:54 2002 +0000
@@ -82,17 +82,17 @@
 static void
 w_short(int x, WFILE *p)
 {
-	w_byte( x      & 0xff, p);
-	w_byte((x>> 8) & 0xff, p);
+	w_byte((char)( x      & 0xff), p);
+	w_byte((char)((x>> 8) & 0xff), p);
 }
 
 static void
 w_long(long x, WFILE *p)
 {
-	w_byte((int)( x      & 0xff), p);
-	w_byte((int)((x>> 8) & 0xff), p);
-	w_byte((int)((x>>16) & 0xff), p);
-	w_byte((int)((x>>24) & 0xff), p);
+ 	w_byte((char)( x      & 0xff), p);
+ 	w_byte((char)((x>> 8) & 0xff), p);
+ 	w_byte((char)((x>>16) & 0xff), p);
+ 	w_byte((char)((x>>24) & 0xff), p);
 }
 
 #if SIZEOF_LONG > 4