Mercurial > genshi > mirror
comparison genshi/path.py @ 1043:a21009a2bc3a trunk
Return correct value and properly namespaced attribute name when matching namespaced attributes with XPath expressions (fixes #572; thanks to Olemis Lang <olemis+trac@gmail.com> for bug report and suggestion for fix).
author | hodgestar |
---|---|
date | Thu, 20 Mar 2014 12:58:48 +0000 |
parents | 16d55698006a |
children |
comparison
equal
deleted
inserted
replaced
1040:accc8a0cf486 | 1043:a21009a2bc3a |
---|---|
1006 self.name = name | 1006 self.name = name |
1007 def __call__(self, kind, data, pos, namespaces, variables): | 1007 def __call__(self, kind, data, pos, namespaces, variables): |
1008 qname = QName('%s}%s' % (namespaces.get(self.prefix), self.name)) | 1008 qname = QName('%s}%s' % (namespaces.get(self.prefix), self.name)) |
1009 if kind is START: | 1009 if kind is START: |
1010 if self.principal_type is ATTRIBUTE and qname in data[1]: | 1010 if self.principal_type is ATTRIBUTE and qname in data[1]: |
1011 return Attrs([(self.name, data[1].get(self.name))]) | 1011 return Attrs([(qname, data[1].get(qname))]) |
1012 else: | 1012 else: |
1013 return data[0] == qname | 1013 return data[0] == qname |
1014 def __repr__(self): | 1014 def __repr__(self): |
1015 return '%s:%s' % (self.prefix, self.name) | 1015 return '%s:%s' % (self.prefix, self.name) |
1016 | 1016 |