From 3e986bccf32d4a2fa3dd4c033eff09f86f47bc4b Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 26 Oct 2013 13:17:09 +0530 Subject: [PATCH] Speed up unnecessarily slow and obtuse dict comparison --- src/html5lib/html5parser.py | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/html5lib/html5parser.py b/src/html5lib/html5parser.py index 44f44af574..936a99c20e 100644 --- a/src/html5lib/html5parser.py +++ b/src/html5lib/html5parser.py @@ -949,17 +949,8 @@ def getPhases(debug): self.endTagHandler.default = self.endTagOther def isMatchingFormattingElement(self, node1, node2): - if node1.name != node2.name or node1.namespace != node2.namespace: - return False - elif len(node1.attributes) != len(node2.attributes): - return False - else: - attributes1 = sorted(node1.attributes.items()) - attributes2 = sorted(node2.attributes.items()) - for attr1, attr2 in zip(attributes1, attributes2): - if attr1 != attr2: - return False - return True + return (node1.name == node2.name and node1.namespace == + node2.namespace and node1.attributes == node2.attributes) # helper def addFormattingElement(self, token):