From 5e9c71ba80355d84c7984287a64fb670cb1a38d1 Mon Sep 17 00:00:00 2001 From: Skip Montanaro Date: Wed, 10 Oct 2001 15:56:34 +0000 Subject: [PATCH] allow long ints to be marshalled as ints - no check is made to the incoming value, so the programmer will have to catch OverflowError. I'm not sure what /F's perspective is on this. Perhaps it should be caught and mapped to an xmlrpclib-specific exception. None of the other type-specific dump methods seem to do any exception handling though. --- Lib/xmlrpclib.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Lib/xmlrpclib.py b/Lib/xmlrpclib.py index 4e98c4c8026..4221bcc9413 100644 --- a/Lib/xmlrpclib.py +++ b/Lib/xmlrpclib.py @@ -33,6 +33,7 @@ # 2001-09-10 fl Lazy import of urllib, cgi, xmllib (20x import speedup) # 2001-10-01 fl Remove containers from memo cache when done with them # 2001-10-01 fl Use faster escape method (80% dumps speedup) +# 2001-10-10 sm Allow long ints to be passed as ints if they don't overflow # # Copyright (c) 1999-2001 by Secret Labs AB. # Copyright (c) 1999-2001 by Fredrik Lundh. @@ -464,6 +465,11 @@ class Marshaller: self.write("%s\n" % value) dispatch[IntType] = dump_int + def dump_long(self, value): + val = int(value) + self.write("%s\n" % val) + dispatch[LongType] = dump_long + def dump_double(self, value): self.write("%s\n" % value) dispatch[FloatType] = dump_double