From 49461ad541a4d4678159270e4bbae7035f1e362e Mon Sep 17 00:00:00 2001 From: cantor Date: Wed, 7 Nov 2007 21:18:35 +0000 Subject: [PATCH] Optimize self-comparison of static constants. git-svn-id: https://svn.middleware.georgetown.edu/cpp-xmltooling/trunk@417 de75baf8-a10c-0410-a50a-987c0e22f00f --- xmltooling/Namespace.cpp | 2 ++ xmltooling/QName.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/xmltooling/Namespace.cpp b/xmltooling/Namespace.cpp index ca3f896..ec272c0 100644 --- a/xmltooling/Namespace.cpp +++ b/xmltooling/Namespace.cpp @@ -88,6 +88,8 @@ Namespace& Namespace::operator=(const Namespace& src) bool xmltooling::operator==(const Namespace& op1, const Namespace& op2) { + if (&op1 == &op2) + return true; return (XMLString::equals(op1.getNamespaceURI(),op2.getNamespaceURI()) && XMLString::equals(op1.getNamespacePrefix(),op2.getNamespacePrefix())); } diff --git a/xmltooling/QName.cpp b/xmltooling/QName.cpp index 29f2714..b161da6 100644 --- a/xmltooling/QName.cpp +++ b/xmltooling/QName.cpp @@ -164,6 +164,8 @@ QName& QName::operator=(const QName& src) bool xmltooling::operator==(const QName& op1, const QName& op2) { + if (&op1 == &op2) + return true; return (!XMLString::compareString(op1.getNamespaceURI(),op2.getNamespaceURI()) && !XMLString::compareString(op1.getLocalPart(),op2.getLocalPart())); } -- 2.1.4