Set the base for atoi() and atol() to 0, since we're reading Python

numbers here, and so that atol() doesn't barf on the trailing 'L'.
Add a test case involving a long integer.
This commit is contained in:
Guido van Rossum 1996-05-15 22:49:57 +00:00
parent 6dabc98400
commit 955c5d156d

View file

@ -389,11 +389,11 @@ class Unpickler:
dispatch[NONE] = load_none
def load_int(self):
self.stack.append(string.atoi(self.readline()[:-1]))
self.stack.append(string.atoi(self.readline()[:-1], 0))
dispatch[INT] = load_int
def load_long(self):
self.stack.append(string.atol(self.readline()[:-1]))
self.stack.append(string.atol(self.readline()[:-1], 0))
dispatch[LONG] = load_long
def load_float(self):
@ -544,7 +544,7 @@ def test():
fn = 'pickle_tmp'
c = C()
c.foo = 1
c.bar = 2
c.bar = 2L
x = [0,1,2,3]
y = ('abc', 'abc', c, c)
x.append(y)