PYTHON-710, SON.to_dict shouldn't change original data.
This commit is contained in:
parent
91a56702cf
commit
686c8fae49
12
bson/son.py
12
bson/son.py
@ -226,12 +226,12 @@ class SON(dict):
|
||||
def transform_value(value):
|
||||
if isinstance(value, list):
|
||||
return [transform_value(v) for v in value]
|
||||
if isinstance(value, SON):
|
||||
value = dict(value)
|
||||
if isinstance(value, dict):
|
||||
for k, v in value.iteritems():
|
||||
value[k] = transform_value(v)
|
||||
return value
|
||||
elif isinstance(value, dict):
|
||||
return dict([
|
||||
(k, transform_value(v))
|
||||
for k, v in value.iteritems()])
|
||||
else:
|
||||
return value
|
||||
|
||||
return transform_value(dict(self))
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user