Skip to content

Commit 8829b7d

Browse files
committed
[1.2.X] Fixed #12632 -- Improved performance of SortedDict. Thanks, Alex Gaynor.
Backport of r13742 from trunk. git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@13743 bcc190cf-cafb-0310-a4f2-bffc1f526a37
1 parent 260eff5 commit 8829b7d

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

django/utils/datastructures.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,11 @@ def __init__(self, data=None):
9999
self.keyOrder = data.keys()
100100
else:
101101
self.keyOrder = []
102+
seen = set()
102103
for key, value in data:
103-
if key not in self.keyOrder:
104+
if key not in seen:
104105
self.keyOrder.append(key)
106+
seen.add(key)
105107

106108
def __deepcopy__(self, memo):
107109
return self.__class__([(key, deepcopy(value, memo))

0 commit comments

Comments
 (0)