changeset 735:7e428b22dbaa trunk

Tweak to [854] to not change the ordering of attributes compared to how they were previously ordered, to avoid breaking any tests that rely on the order. See #216.
author cmlenz
date Thu, 05 Jun 2008 09:49:53 +0000
parents ea2566b2f226
children a1e8b24bc1bb
files genshi/builder.py
diffstat 1 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/genshi/builder.py
+++ b/genshi/builder.py
@@ -152,12 +152,14 @@
 
 
 def _kwargs_to_attrs(kwargs):
-    retval = {}
+    attrs = []
+    names = set()
     for name, value in kwargs.items():
         name = name.rstrip('_').replace('_', '-')
-        if value is not None and name not in retval:
-            retval[QName(name)] = unicode(value)
-    return Attrs(retval.items())
+        if value is not None and name not in names:
+            attrs.append((QName(name), unicode(value)))
+            names.add(name)
+    return Attrs(attrs)
 
 
 class Element(Fragment):
Copyright (C) 2012-2017 Edgewall Software