Sync up ID attribute handling to latest tooling changes.
[shibboleth/cpp-opensaml.git] / saml / signature / SignatureProfileValidator.cpp
index 5a9881f..ada4481 100644 (file)
@@ -55,7 +55,8 @@ void SignatureProfileValidator::validate(const XMLObject* xmlObject) const
         DSIGReference* ref=refs->item(0);\r
         if (ref) {\r
             const XMLCh* URI=ref->getURI();\r
-            if (URI==NULL || *URI==0 || (*URI==chPound && !XMLString::compareString(URI+1,signableObj->getId()))) {\r
+            const XMLCh* ID=signableObj->getXMLID();\r
+            if (URI==NULL || *URI==0 || (*URI==chPound && ID && !XMLString::compareString(URI+1,ID))) {\r
                 DSIGTransformList* tlist=ref->getTransforms();\r
                 for (unsigned int i=0; tlist && i<tlist->getSize(); i++) {\r
                     if (tlist->item(i)->getTransformType()==TRANSFORM_ENVELOPED_SIGNATURE)\r