Allow setting attributes to None as a noop, for convenience.
authorFredrik Tolf <fredrik@dolda2000.com>
Sun, 15 Sep 2013 22:40:02 +0000 (00:40 +0200)
committerFredrik Tolf <fredrik@dolda2000.com>
Sun, 15 Sep 2013 22:40:02 +0000 (00:40 +0200)
wrw/sp/cons.py
wrw/sp/xhtml.py

index ce258c6..4052dce 100644 (file)
@@ -60,7 +60,8 @@ class context(object):
         node.children.append(self.nodefrom(child))
 
     def addattr(self, node, k, v):
-        node.attrs[unicode(k)] = unicode(v)
+        if v is not None:
+            node.attrs[unicode(k)] = unicode(v)
 
 class constructor(object):
     def __init__(self, ns, elcls=element, ctx=None):
index e78d197..f10d315 100644 (file)
@@ -19,7 +19,7 @@ class xhtmlcontext(_cons.context):
 
     def addattr(self, node, k, v):
         k = unicode(k)
-        node.attrs[self.attrmap.get(k, k)] = unicode(v)
+        super(xhtmlcontext, self).addattr(node, self.attrmap.get(k, k), v)
 
 def cons(ctx=None):
     if ctx is None: ctx = xhtmlcontext()