Fix from SF patch 565085: copy._reduction doesn't __setstate__.

Straightforward fix.  Will backport to 2.2.  If there's ever a new 2.1
release, this could be backported there too (since it's an issue with
anything that's got both a __reduce__ and a __setstate__).
This commit is contained in:
Guido van Rossum 2002-06-06 17:41:20 +00:00
parent 88a20baa77
commit 3e3583c345
1 changed files with 4 additions and 1 deletions

View File

@ -301,7 +301,10 @@ def _reconstruct(x, info, deep, memo=None):
if state:
if deep:
state = deepcopy(state, memo)
y.__dict__.update(state)
if hasattr(y, '__setstate__'):
y.__setstate__(state)
else:
y.__dict__.update(state)
return y
del d