mirror of
https://github.com/vgough/encfs.git
synced 2024-11-25 01:13:12 +01:00
Switch from TinyXML-1 to TinyXML-2.
This commit is contained in:
parent
e093031166
commit
76db321170
@ -11,12 +11,12 @@ IF( TINYXML_INCLUDE_DIR )
|
|||||||
SET( TinyXML_FIND_QUIETLY TRUE )
|
SET( TinyXML_FIND_QUIETLY TRUE )
|
||||||
ENDIF( TINYXML_INCLUDE_DIR )
|
ENDIF( TINYXML_INCLUDE_DIR )
|
||||||
|
|
||||||
FIND_PATH( TINYXML_INCLUDE_DIR "tinyxml.h"
|
FIND_PATH( TINYXML_INCLUDE_DIR "tinyxml2.h"
|
||||||
PATH_SUFFIXES "tinyxml" )
|
PATH_SUFFIXES "tinyxml2" )
|
||||||
|
|
||||||
FIND_LIBRARY( TINYXML_LIBRARIES
|
FIND_LIBRARY( TINYXML_LIBRARIES
|
||||||
NAMES "tinyxml"
|
NAMES "tinyxml2"
|
||||||
PATH_SUFFIXES "tinyxml" )
|
PATH_SUFFIXES "tinyxml2" )
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set TINYXML_FOUND to TRUE if
|
# handle the QUIETLY and REQUIRED arguments and set TINYXML_FOUND to TRUE if
|
||||||
# all listed variables are TRUE
|
# all listed variables are TRUE
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
#include <cstring>
|
#include <cstring>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
#include <tinyxml.h>
|
#include <tinyxml2.h>
|
||||||
|
|
||||||
#include <glog/logging.h>
|
#include <glog/logging.h>
|
||||||
#include "base/base64.h"
|
#include "base/base64.h"
|
||||||
@ -124,13 +124,13 @@ bool XmlValue::read(const char *path, Interface *out) const {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string safeValueForNode(const TiXmlElement *element) {
|
std::string safeValueForNode(const tinyxml2::XMLElement *element) {
|
||||||
std::string value;
|
std::string value;
|
||||||
if (element == NULL) return value;
|
if (element == NULL) return value;
|
||||||
|
|
||||||
const TiXmlNode *child = element->FirstChild();
|
const tinyxml2::XMLNode *child = element->FirstChild();
|
||||||
if (child) {
|
if (child) {
|
||||||
const TiXmlText *childText = child->ToText();
|
const tinyxml2::XMLText *childText = child->ToText();
|
||||||
if (childText) value = childText->Value();
|
if (childText) value = childText->Value();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -138,10 +138,10 @@ std::string safeValueForNode(const TiXmlElement *element) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class XmlNode : virtual public XmlValue {
|
class XmlNode : virtual public XmlValue {
|
||||||
const TiXmlElement *element;
|
const tinyxml2::XMLElement *element;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
XmlNode(const TiXmlElement *element_)
|
XmlNode(const tinyxml2::XMLElement *element_)
|
||||||
: XmlValue(safeValueForNode(element_)), element(element_) {}
|
: XmlValue(safeValueForNode(element_)), element(element_) {}
|
||||||
|
|
||||||
virtual ~XmlNode() {}
|
virtual ~XmlNode() {}
|
||||||
@ -154,7 +154,7 @@ class XmlNode : virtual public XmlValue {
|
|||||||
else
|
else
|
||||||
return XmlValuePtr();
|
return XmlValuePtr();
|
||||||
} else {
|
} else {
|
||||||
const TiXmlElement *el = element->FirstChildElement(name);
|
const tinyxml2::XMLElement *el = element->FirstChildElement(name);
|
||||||
if (el)
|
if (el)
|
||||||
return XmlValuePtr(new XmlNode(el));
|
return XmlValuePtr(new XmlNode(el));
|
||||||
else
|
else
|
||||||
@ -164,7 +164,7 @@ class XmlNode : virtual public XmlValue {
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct XmlReader::XmlReaderData {
|
struct XmlReader::XmlReaderData {
|
||||||
shared_ptr<TiXmlDocument> doc;
|
shared_ptr<tinyxml2::XMLDocument> doc;
|
||||||
};
|
};
|
||||||
|
|
||||||
XmlReader::XmlReader() : pd(new XmlReaderData()) {}
|
XmlReader::XmlReader() : pd(new XmlReaderData()) {}
|
||||||
@ -172,22 +172,22 @@ XmlReader::XmlReader() : pd(new XmlReaderData()) {}
|
|||||||
XmlReader::~XmlReader() {}
|
XmlReader::~XmlReader() {}
|
||||||
|
|
||||||
bool XmlReader::load(const char *fileName) {
|
bool XmlReader::load(const char *fileName) {
|
||||||
pd->doc.reset(new TiXmlDocument(fileName));
|
pd->doc.reset(new tinyxml2::XMLDocument());
|
||||||
|
|
||||||
return pd->doc->LoadFile();
|
return pd->doc->LoadFile(fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
XmlValuePtr XmlReader::operator[](const char *name) const {
|
XmlValuePtr XmlReader::operator[](const char *name) const {
|
||||||
TiXmlNode *node = pd->doc->FirstChild(name);
|
tinyxml2::XMLNode *node = pd->doc->FirstChildElement(name);
|
||||||
if (node == NULL) {
|
if (node == NULL) {
|
||||||
LOG(ERROR) << "Xml node " << name << " not found";
|
LOG(ERROR) << "Xml node " << name << " not found";
|
||||||
return XmlValuePtr(new XmlValue());
|
return XmlValuePtr(new XmlValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
TiXmlElement *element = node->ToElement();
|
tinyxml2::XMLElement *element = node->ToElement();
|
||||||
if (element == NULL) {
|
if (element == NULL) {
|
||||||
LOG(ERROR) << "Xml node " << name
|
LOG(ERROR) << "Xml node " << name
|
||||||
<< " not element, type = " << node->Type();
|
<< " not element";
|
||||||
return XmlValuePtr(new XmlValue());
|
return XmlValuePtr(new XmlValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user