projects
/
shibboleth
/
cpp-xmltooling.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
CPPXT-104 - Add exception handling to integer conversions
[shibboleth/cpp-xmltooling.git]
/
xmltooling
/
XMLObjectBuilder.cpp
diff --git
a/xmltooling/XMLObjectBuilder.cpp
b/xmltooling/XMLObjectBuilder.cpp
index
052f80f
..
6b33a6d
100644
(file)
--- a/
xmltooling/XMLObjectBuilder.cpp
+++ b/
xmltooling/XMLObjectBuilder.cpp
@@
-55,8
+55,9
@@
XMLObject* XMLObjectBuilder::buildFromQName(const QName& q) const
XMLObject* XMLObjectBuilder::buildFromElement(DOMElement* element, bool bindDocument) const
{
XMLObject* XMLObjectBuilder::buildFromElement(DOMElement* element, bool bindDocument) const
{
+ auto_ptr<QName> schemaType(XMLHelper::getXSIType(element));
auto_ptr<XMLObject> ret(
auto_ptr<XMLObject> ret(
- buildObject(element->getNamespaceURI(),element->getLocalName(),element->getPrefix(),
XMLHelper::getXSIType(element
))
+ buildObject(element->getNamespaceURI(),element->getLocalName(),element->getPrefix(),
schemaType.get(
))
);
ret->unmarshall(element,bindDocument);
return ret.release();
);
ret->unmarshall(element,bindDocument);
return ret.release();
@@
-84,7
+85,7
@@
const XMLObjectBuilder* XMLObjectBuilder::getBuilder(const DOMElement* domElemen
#ifdef _DEBUG
xmltooling::NDC ndc("getBuilder");
#endif
#ifdef _DEBUG
xmltooling::NDC ndc("getBuilder");
#endif
- Category& log=Category::getInstance(XMLTOOLING_LOGCAT".XMLObject.Builder");
+ Category& log=Category::getInstance(XMLTOOLING_LOGCAT
".XMLObject.Builder");
auto_ptr<QName> schemaType(XMLHelper::getXSIType(domElement));
const XMLObjectBuilder* xmlObjectBuilder = schemaType.get() ? getBuilder(*(schemaType.get())) : nullptr;
auto_ptr<QName> schemaType(XMLHelper::getXSIType(domElement));
const XMLObjectBuilder* xmlObjectBuilder = schemaType.get() ? getBuilder(*(schemaType.get())) : nullptr;