1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00

Made ValueTree::fromXml more resilient if given data containing text elements.

This commit is contained in:
jules 2015-09-24 20:03:59 -07:00
parent 1c5304b598
commit f640c6f556

View file

@ -958,22 +958,26 @@ XmlElement* ValueTree::createXml() const
ValueTree ValueTree::fromXml (const XmlElement& xml)
{
if (! xml.isTextElement())
{
ValueTree v (xml.getTagName());
v.object->properties.setFromXmlAttributes (xml);
forEachXmlChildElement (xml, e)
v.addChild (fromXml (*e), -1, nullptr);
return v;
}
// ValueTrees don't have any equivalent to XML text elements!
jassert (! xml.isTextElement());
ValueTree v (xml.getTagName());
v.object->properties.setFromXmlAttributes (xml);
forEachXmlChildElement (xml, e)
v.addChild (fromXml (*e), -1, nullptr);
return v;
jassertfalse;
return ValueTree();
}
String ValueTree::toXmlString() const
{
const ScopedPointer<XmlElement> xml (createXml());
return xml != nullptr ? xml->createDocument ("") : String();
return xml != nullptr ? xml->createDocument (StringRef()) : String();
}
//==============================================================================