Opened 14 years ago
Closed 14 years ago
#18175 closed Bug (fixed)
SortedDict issue when copied with copy.copy
| Reported by: | linovia | Owned by: | nobody |
|---|---|---|---|
| Component: | Uncategorized | Version: | 1.4 |
| Severity: | Normal | Keywords: | |
| Cc: | linovia | Triage Stage: | Accepted |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
If SortedDict is copied using the copy.copy, the data are duplicated.
>>> from django.utils.datastructures import SortedDict
>>> from copy import copy
>>> test = SortedDict()
>>> test['a']=1
>>> copy(test)
{'a': 1, 'a': 1}
>>> test
{'a': 1, 'a': 1}
You'll find joined a test patch to show this issue.
Attachments (3)
Change History (6)
by , 14 years ago
| Attachment: | failing_sorted_dict_test.diff added |
|---|
by , 14 years ago
| Attachment: | sorted_dict_copy.diff added |
|---|
comment:2 by , 14 years ago
Can you explain what is going wrong currently? Why that __copy__ method is needed? Preferably in a comment included in the patch.
comment:3 by , 14 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
| Triage Stage: | Unreviewed → Accepted |
Fixed in commit 4b11762f7d7aed2f4f36c4158326c0a4332038f9
I did some small changes to the patch. I still don't understand why the behavior was broken before.
Thanks for the report & patch!
Note:
See TracTickets
for help on using tickets.
Failing test case