Commit 69633218 authored by Thomas Wouters's avatar Thomas Wouters

Backport trunk checkin r51565:

Fix SF bug #1545837: array.array borks on deepcopy. array.__deepcopy__()
needs to take an argument, even if it doesn't actually use it.
parent 30ff6403
...@@ -85,6 +85,13 @@ class BaseTest(unittest.TestCase): ...@@ -85,6 +85,13 @@ class BaseTest(unittest.TestCase):
self.assertNotEqual(id(a), id(b)) self.assertNotEqual(id(a), id(b))
self.assertEqual(a, b) self.assertEqual(a, b)
def test_deepcopy(self):
import copy
a = array.array(self.typecode, self.example)
b = copy.deepcopy(a)
self.assertNotEqual(id(a), id(b))
self.assertEqual(a, b)
def test_pickle(self): def test_pickle(self):
for protocol in (0, 1, 2): for protocol in (0, 1, 2):
a = array.array(self.typecode, self.example) a = array.array(self.typecode, self.example)
......
...@@ -242,6 +242,7 @@ Dag Gruneau ...@@ -242,6 +242,7 @@ Dag Gruneau
Michael Guravage Michael Guravage
Lars Gustbel Lars Gustbel
Barry Haddow Barry Haddow
Vclav Haisman
Paul ten Hagen Paul ten Hagen
Rasmus Hahn Rasmus Hahn
Peter Haight Peter Haight
......
...@@ -1495,7 +1495,7 @@ PyMethodDef array_methods[] = { ...@@ -1495,7 +1495,7 @@ PyMethodDef array_methods[] = {
copy_doc}, copy_doc},
{"count", (PyCFunction)array_count, METH_O, {"count", (PyCFunction)array_count, METH_O,
count_doc}, count_doc},
{"__deepcopy__",(PyCFunction)array_copy, METH_NOARGS, {"__deepcopy__",(PyCFunction)array_copy, METH_O,
copy_doc}, copy_doc},
{"extend", (PyCFunction)array_extend, METH_O, {"extend", (PyCFunction)array_extend, METH_O,
extend_doc}, extend_doc},
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment