X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-opensaml.git;a=blobdiff_plain;f=saml%2Fsaml2%2Fmetadata%2Fimpl%2FXMLMetadataProvider.cpp;h=0dbc9c765d0f385b548585fc9968fb1c1302a03d;hp=1809d3dca3c620c7268a5553267ab519d96054c3;hb=1eec8cff8b46eeea53865cfcfa887c5ac24d1f35;hpb=f8f938aa0aeb484d17952a5bae5c861780c90048 diff --git a/saml/saml2/metadata/impl/XMLMetadataProvider.cpp b/saml/saml2/metadata/impl/XMLMetadataProvider.cpp index 1809d3d..0dbc9c7 100644 --- a/saml/saml2/metadata/impl/XMLMetadataProvider.cpp +++ b/saml/saml2/metadata/impl/XMLMetadataProvider.cpp @@ -101,16 +101,15 @@ pair XMLMetadataProvider::load() "Root of metadata instance not recognized: $1", params(1,xmlObject->getElementQName().toString().c_str()) ); - // Preprocess the metadata. - if (!m_validate) { - try { - SchemaValidators.validate(xmlObject.get()); - } - catch (exception& ex) { - m_log.error("metadata intance failed manual schema validation checking: %s", ex.what()); - throw MetadataException("Metadata instance failed manual schema validation checking."); - } + // Preprocess the metadata (even if we schema-validated). + try { + SchemaValidators.validate(xmlObject.get()); } + catch (exception& ex) { + m_log.error("metadata intance failed manual validation checking: %s", ex.what()); + throw MetadataException("Metadata instance failed manual validation checking."); + } + doFilters(*xmlObject.get()); xmlObject->releaseThisAndChildrenDOM(); xmlObject->setDocument(NULL);