mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-27 15:32:52 +02:00
format with astyle
git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@278 e54a6e83-5905-42d5-8d5c-058d10e6a962
Origin commit data
------------------
Branch: ni/coolstream
Commit: 4ae5ad688e
Author: Jacek Jendrzej <overx300@gmail.com>
Date: 2010-02-06 (Sat, 06 Feb 2010)
------------------
This commit was generated by Migit
This commit is contained in:
@@ -182,17 +182,17 @@ xmlDocPtr parseXml(const char * data)
|
|||||||
|
|
||||||
if (!tree_parser->Parse(data, strlen(data), true))
|
if (!tree_parser->Parse(data, strlen(data), true))
|
||||||
{
|
{
|
||||||
printf("Error parsing XML Data: %s at line %d\n",
|
printf("Error parsing XML Data: %s at line %d\n",
|
||||||
tree_parser->ErrorString(tree_parser->GetErrorCode()),
|
tree_parser->ErrorString(tree_parser->GetErrorCode()),
|
||||||
tree_parser->GetCurrentLineNumber());
|
tree_parser->GetCurrentLineNumber());
|
||||||
|
|
||||||
delete tree_parser;
|
delete tree_parser;
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!tree_parser->RootNode())
|
if (!tree_parser->RootNode())
|
||||||
{
|
{
|
||||||
printf("Error: No Root Node\n");
|
printf("Error: No Root Node\n");
|
||||||
delete tree_parser;
|
delete tree_parser;
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -211,7 +211,7 @@ xmlDocPtr parseXmlFile(const char * filename, bool warning_by_nonexistence /* =
|
|||||||
|
|
||||||
if (xml_file == NULL)
|
if (xml_file == NULL)
|
||||||
{
|
{
|
||||||
if (warning_by_nonexistence)
|
if (warning_by_nonexistence)
|
||||||
perror(filename);
|
perror(filename);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -46,401 +46,418 @@
|
|||||||
|
|
||||||
XMLAttribute::XMLAttribute()
|
XMLAttribute::XMLAttribute()
|
||||||
{
|
{
|
||||||
name=value=0;
|
name=value=0;
|
||||||
next=prev=0;
|
next=prev=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLAttribute::XMLAttribute(char *nam, char *val)
|
XMLAttribute::XMLAttribute(char *nam, char *val)
|
||||||
{
|
{
|
||||||
name=value=0;
|
name=value=0;
|
||||||
next=prev=0;
|
next=prev=0;
|
||||||
|
|
||||||
SetName(nam);
|
SetName(nam);
|
||||||
SetValue(val);
|
SetValue(val);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLAttribute::XMLAttribute(XMLAttribute *prv, char *nam, char *val)
|
XMLAttribute::XMLAttribute(XMLAttribute *prv, char *nam, char *val)
|
||||||
{
|
{
|
||||||
name=value=0;
|
name=value=0;
|
||||||
|
|
||||||
SetName(nam);
|
SetName(nam);
|
||||||
SetValue(val);
|
SetValue(val);
|
||||||
SetPrevious(prv);
|
SetPrevious(prv);
|
||||||
|
|
||||||
next=0;
|
next=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLAttribute::XMLAttribute(XMLAttribute *prv, char *nam, char *val, XMLAttribute *nxt)
|
XMLAttribute::XMLAttribute(XMLAttribute *prv, char *nam, char *val, XMLAttribute *nxt)
|
||||||
{
|
{
|
||||||
name=value=0;
|
name=value=0;
|
||||||
|
|
||||||
SetName(nam);
|
SetName(nam);
|
||||||
SetValue(val);
|
SetValue(val);
|
||||||
|
|
||||||
SetPrevious(prv);
|
SetPrevious(prv);
|
||||||
SetNext(nxt);
|
SetNext(nxt);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLAttribute::~XMLAttribute()
|
XMLAttribute::~XMLAttribute()
|
||||||
{
|
{
|
||||||
if (name) { free(name); name=0; };
|
if (name) {
|
||||||
if (value) { free(value); value=0; };
|
free(name);
|
||||||
|
name=0;
|
||||||
|
};
|
||||||
|
if (value) {
|
||||||
|
free(value);
|
||||||
|
value=0;
|
||||||
|
};
|
||||||
|
|
||||||
next=prev=0;
|
next=prev=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLAttribute::SetName(char *nam)
|
void XMLAttribute::SetName(char *nam)
|
||||||
{
|
{
|
||||||
if (name) free(name);
|
if (name) free(name);
|
||||||
|
|
||||||
name=strdup(nam);
|
name=strdup(nam);
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLAttribute::SetValue(char *val)
|
void XMLAttribute::SetValue(char *val)
|
||||||
{
|
{
|
||||||
if (value) free(value);
|
if (value) free(value);
|
||||||
|
|
||||||
value=strdup(val);
|
value=strdup(val);
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLAttribute::SetNext(XMLAttribute *nxt)
|
void XMLAttribute::SetNext(XMLAttribute *nxt)
|
||||||
{
|
{
|
||||||
next=nxt;
|
next=nxt;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLAttribute::SetPrevious(XMLAttribute *prv)
|
void XMLAttribute::SetPrevious(XMLAttribute *prv)
|
||||||
{
|
{
|
||||||
prev=prv;
|
prev=prv;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* XMLTreeNode class */
|
/* XMLTreeNode class */
|
||||||
|
|
||||||
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt)
|
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt)
|
||||||
{
|
{
|
||||||
attributes=0;
|
attributes=0;
|
||||||
next=child=0;
|
next=child=0;
|
||||||
type=data=0;
|
type=data=0;
|
||||||
dataSize=0;
|
dataSize=0;
|
||||||
|
|
||||||
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
||||||
SetParent(prnt);
|
SetParent(prnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ)
|
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ)
|
||||||
{
|
{
|
||||||
attributes=0;
|
attributes=0;
|
||||||
next=child=0;
|
next=child=0;
|
||||||
type=data=0;
|
type=data=0;
|
||||||
dataSize=0;
|
dataSize=0;
|
||||||
|
|
||||||
SetType(typ);
|
SetType(typ);
|
||||||
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
||||||
SetParent(prnt);
|
SetParent(prnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ, char *dta, unsigned int dtaSize)
|
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ, char *dta, unsigned int dtaSize)
|
||||||
{
|
{
|
||||||
attributes=0;
|
attributes=0;
|
||||||
next=child=0;
|
next=child=0;
|
||||||
type=0;
|
type=0;
|
||||||
|
|
||||||
SetType(typ);
|
SetType(typ);
|
||||||
SetData(dta, dtaSize);
|
SetData(dta, dtaSize);
|
||||||
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
||||||
SetParent(prnt);
|
SetParent(prnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ, char *dta, unsigned int dtaSize, XMLTreeNode *cld)
|
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ, char *dta, unsigned int dtaSize, XMLTreeNode *cld)
|
||||||
{
|
{
|
||||||
attributes=0;
|
attributes=0;
|
||||||
next=0;
|
next=0;
|
||||||
type=0;
|
type=0;
|
||||||
|
|
||||||
SetType(typ);
|
SetType(typ);
|
||||||
SetData(dta, dtaSize);
|
SetData(dta, dtaSize);
|
||||||
SetChild(cld);
|
SetChild(cld);
|
||||||
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
||||||
SetParent(prnt);
|
SetParent(prnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ, char *dta, unsigned int dtaSize, XMLTreeNode *cld, XMLTreeNode *nxt)
|
XMLTreeNode::XMLTreeNode(XMLTreeNode *prnt, char *typ, char *dta, unsigned int dtaSize, XMLTreeNode *cld, XMLTreeNode *nxt)
|
||||||
{
|
{
|
||||||
attributes=0;
|
attributes=0;
|
||||||
type=0;
|
type=0;
|
||||||
|
|
||||||
SetType(typ);
|
SetType(typ);
|
||||||
SetData(dta, dtaSize);
|
SetData(dta, dtaSize);
|
||||||
SetChild(cld);
|
SetChild(cld);
|
||||||
SetNext(nxt);
|
SetNext(nxt);
|
||||||
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
SetMatchingMode(prnt?prnt->mmode:MATCH_CASE);
|
||||||
SetParent(prnt);
|
SetParent(prnt);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeNode::~XMLTreeNode()
|
XMLTreeNode::~XMLTreeNode()
|
||||||
{
|
{
|
||||||
DeleteAttributes();
|
DeleteAttributes();
|
||||||
DeleteChildren();
|
DeleteChildren();
|
||||||
|
|
||||||
if (type) { free(type); type=0; };
|
if (type) {
|
||||||
if (data) { delete[] data; dataSize=0; };
|
free(type);
|
||||||
|
type=0;
|
||||||
|
};
|
||||||
|
if (data) {
|
||||||
|
delete[] data;
|
||||||
|
dataSize=0;
|
||||||
|
};
|
||||||
|
|
||||||
next=0;
|
next=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLAttribute *XMLTreeNode::GetAttribute(const char *name) const
|
XMLAttribute *XMLTreeNode::GetAttribute(const char *name) const
|
||||||
{
|
{
|
||||||
XMLAttribute *a;
|
XMLAttribute *a;
|
||||||
|
|
||||||
a=attributes;
|
a=attributes;
|
||||||
|
|
||||||
while (a)
|
while (a)
|
||||||
{
|
{
|
||||||
if (a->GetName())
|
if (a->GetName())
|
||||||
{
|
{
|
||||||
switch (mmode)
|
switch (mmode)
|
||||||
{
|
{
|
||||||
case MATCH_CASE:
|
case MATCH_CASE:
|
||||||
if (!strcmp(a->GetName(), name)) return a;
|
if (!strcmp(a->GetName(), name)) return a;
|
||||||
|
|
||||||
case MATCH_NOCASE:
|
case MATCH_NOCASE:
|
||||||
if (!stricmp(a->GetName(), name)) return a;
|
if (!stricmp(a->GetName(), name)) return a;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
a=a->GetNext();
|
a=a->GetNext();
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
char *XMLTreeNode::GetAttributeValue(const char *name) const
|
char *XMLTreeNode::GetAttributeValue(const char *name) const
|
||||||
{
|
{
|
||||||
XMLAttribute *a;
|
XMLAttribute *a;
|
||||||
|
|
||||||
a=GetAttribute(name);
|
a=GetAttribute(name);
|
||||||
if (a) return a->GetValue();
|
if (a) return a->GetValue();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::AddNode(XMLTreeNode *node, addmode mode)
|
void XMLTreeNode::AddNode(XMLTreeNode *node, addmode mode)
|
||||||
{
|
{
|
||||||
XMLTreeNode *n=0;
|
XMLTreeNode *n=0;
|
||||||
|
|
||||||
if (!node) return;
|
if (!node) return;
|
||||||
node->next=0;
|
node->next=0;
|
||||||
|
|
||||||
switch (mode)
|
switch (mode)
|
||||||
{
|
{
|
||||||
case ADD_NEIGHBOUR:
|
case ADD_NEIGHBOUR:
|
||||||
n=this;
|
n=this;
|
||||||
|
|
||||||
case ADD_CHILD:
|
case ADD_CHILD:
|
||||||
n=child;
|
n=child;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (n)
|
if (n)
|
||||||
{
|
{
|
||||||
while (n->next) n=n->next;
|
while (n->next) n=n->next;
|
||||||
|
|
||||||
n->next=node;
|
n->next=node;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
child=node;
|
child=node;
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeNode *XMLTreeNode::AddNode(addmode mode)
|
XMLTreeNode *XMLTreeNode::AddNode(addmode mode)
|
||||||
{
|
{
|
||||||
XMLTreeNode *n=new XMLTreeNode(this);
|
XMLTreeNode *n=new XMLTreeNode(this);
|
||||||
|
|
||||||
AddNode(n, mode);
|
AddNode(n, mode);
|
||||||
|
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetNext(XMLTreeNode *nxt)
|
void XMLTreeNode::SetNext(XMLTreeNode *nxt)
|
||||||
{
|
{
|
||||||
next=nxt;
|
next=nxt;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetChild(XMLTreeNode *cld)
|
void XMLTreeNode::SetChild(XMLTreeNode *cld)
|
||||||
{
|
{
|
||||||
child=cld;
|
child=cld;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetParent(XMLTreeNode *prnt)
|
void XMLTreeNode::SetParent(XMLTreeNode *prnt)
|
||||||
{
|
{
|
||||||
parent=prnt;
|
parent=prnt;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetAttribute(char *name, char *value)
|
void XMLTreeNode::SetAttribute(char *name, char *value)
|
||||||
{
|
{
|
||||||
XMLAttribute *a;
|
XMLAttribute *a;
|
||||||
|
|
||||||
a=GetAttribute(name);
|
a=GetAttribute(name);
|
||||||
|
|
||||||
if (a)
|
if (a)
|
||||||
a->SetValue(value);
|
a->SetValue(value);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
a=attributes;
|
a=attributes;
|
||||||
|
|
||||||
if (a)
|
if (a)
|
||||||
{
|
{
|
||||||
while (a->GetNext()) a=a->GetNext();
|
while (a->GetNext()) a=a->GetNext();
|
||||||
|
|
||||||
a->SetNext(new XMLAttribute(a, name, value, 0));
|
a->SetNext(new XMLAttribute(a, name, value, 0));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
a=attributes=new XMLAttribute(0, name, value, 0);
|
a=attributes=new XMLAttribute(0, name, value, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetType(char *typ)
|
void XMLTreeNode::SetType(char *typ)
|
||||||
{
|
{
|
||||||
if (type) free(type);
|
if (type) free(type);
|
||||||
|
|
||||||
type=strdup(typ);
|
type=strdup(typ);
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetData(char *dat, unsigned int datSize)
|
void XMLTreeNode::SetData(char *dat, unsigned int datSize)
|
||||||
{
|
{
|
||||||
if (data) delete[] data;
|
if (data) delete[] data;
|
||||||
|
|
||||||
dataSize=datSize;
|
dataSize=datSize;
|
||||||
data=new char[dataSize+1];
|
data=new char[dataSize+1];
|
||||||
data[dataSize]=0;
|
data[dataSize]=0;
|
||||||
|
|
||||||
memcpy(data, dat, datSize);
|
memcpy(data, dat, datSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::AppendData(char *dat, unsigned int datSize)
|
void XMLTreeNode::AppendData(char *dat, unsigned int datSize)
|
||||||
{
|
{
|
||||||
if (!data)
|
if (!data)
|
||||||
SetData(dat, datSize);
|
SetData(dat, datSize);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
char *tmp;
|
char *tmp;
|
||||||
|
|
||||||
tmp=new char[dataSize+datSize];
|
tmp=new char[dataSize+datSize];
|
||||||
memcpy(tmp, data, dataSize);
|
memcpy(tmp, data, dataSize);
|
||||||
memcpy(tmp+dataSize, dat, datSize);
|
memcpy(tmp+dataSize, dat, datSize);
|
||||||
|
|
||||||
SetData(tmp, dataSize+datSize);
|
SetData(tmp, dataSize+datSize);
|
||||||
|
|
||||||
delete[] tmp;
|
delete[] tmp;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetPDataOff(int pdo)
|
void XMLTreeNode::SetPDataOff(int pdo)
|
||||||
{
|
{
|
||||||
pdataOff=pdo;
|
pdataOff=pdo;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::SetMatchingMode(matchmode mode)
|
void XMLTreeNode::SetMatchingMode(matchmode mode)
|
||||||
{
|
{
|
||||||
mmode=mode;
|
mmode=mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::DeleteAttribute(char *name)
|
void XMLTreeNode::DeleteAttribute(char *name)
|
||||||
{
|
{
|
||||||
XMLAttribute *a, *next1, *prev;
|
XMLAttribute *a, *next1, *prev;
|
||||||
|
|
||||||
a=GetAttribute(name);
|
a=GetAttribute(name);
|
||||||
if (!a) return;
|
if (!a) return;
|
||||||
|
|
||||||
next1=a->GetNext();
|
next1=a->GetNext();
|
||||||
prev=a->GetPrevious();
|
prev=a->GetPrevious();
|
||||||
|
|
||||||
if (prev) prev->SetNext(next1);
|
if (prev) prev->SetNext(next1);
|
||||||
if (next1) next1->SetPrevious(prev);
|
if (next1) next1->SetPrevious(prev);
|
||||||
|
|
||||||
delete a;
|
delete a;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::DeleteAttributes()
|
void XMLTreeNode::DeleteAttributes()
|
||||||
{
|
{
|
||||||
XMLAttribute *a, *b;
|
XMLAttribute *a, *b;
|
||||||
|
|
||||||
a=attributes;
|
a=attributes;
|
||||||
|
|
||||||
while (a)
|
while (a)
|
||||||
{
|
{
|
||||||
b=a->GetNext(); delete a;
|
b=a->GetNext();
|
||||||
a=b;
|
delete a;
|
||||||
}
|
a=b;
|
||||||
|
}
|
||||||
|
|
||||||
attributes=0;
|
attributes=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeNode::DeleteChildren()
|
void XMLTreeNode::DeleteChildren()
|
||||||
{
|
{
|
||||||
XMLTreeNode *a, *b;
|
XMLTreeNode *a, *b;
|
||||||
|
|
||||||
if (!child) return;
|
if (!child) return;
|
||||||
a=child;
|
a=child;
|
||||||
|
|
||||||
while (a)
|
while (a)
|
||||||
{
|
{
|
||||||
b=a->next; delete a;
|
b=a->next;
|
||||||
a=b;
|
delete a;
|
||||||
}
|
a=b;
|
||||||
|
}
|
||||||
|
|
||||||
child=0;
|
child=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeParser::StartElementHandler(const XML_Char *name, const XML_Char **patts)
|
void XMLTreeParser::StartElementHandler(const XML_Char *name, const XML_Char **patts)
|
||||||
{
|
{
|
||||||
XMLTreeNode *n;
|
XMLTreeNode *n;
|
||||||
const XML_Char **a=patts;
|
const XML_Char **a=patts;
|
||||||
|
|
||||||
n=new XMLTreeNode(current, (char *) name);
|
n=new XMLTreeNode(current, (char *) name);
|
||||||
|
|
||||||
if (a)
|
if (a)
|
||||||
{
|
{
|
||||||
while (*a) { n->SetAttribute((char *) a[0], (char *) a[1]); a+=2; };
|
while (*a) {
|
||||||
}
|
n->SetAttribute((char *) a[0], (char *) a[1]);
|
||||||
|
a+=2;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
if (current)
|
if (current)
|
||||||
{
|
{
|
||||||
n->SetPDataOff(current->GetDataSize());
|
n->SetPDataOff(current->GetDataSize());
|
||||||
current->AddNode(n, XMLTreeNode::ADD_CHILD);
|
current->AddNode(n, XMLTreeNode::ADD_CHILD);
|
||||||
current=n;
|
current=n;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
root=current=n;
|
root=current=n;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeParser::EndElementHandler(const XML_Char* /*name*/)
|
void XMLTreeParser::EndElementHandler(const XML_Char* /*name*/)
|
||||||
{
|
{
|
||||||
if (current)
|
if (current)
|
||||||
{
|
{
|
||||||
if (current->GetParent()) current=current->GetParent();
|
if (current->GetParent()) current=current->GetParent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void XMLTreeParser::CharacterDataHandler(const XML_Char *s, int len)
|
void XMLTreeParser::CharacterDataHandler(const XML_Char *s, int len)
|
||||||
{
|
{
|
||||||
if (current)
|
if (current)
|
||||||
current->AppendData((char *) s, len);
|
current->AppendData((char *) s, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeParser::XMLTreeParser(const XML_Char *encoding1): XML_Parser(encoding1)
|
XMLTreeParser::XMLTreeParser(const XML_Char *encoding1): XML_Parser(encoding1)
|
||||||
{
|
{
|
||||||
root=current=0;
|
root=current=0;
|
||||||
|
|
||||||
startElementHandler=endElementHandler=characterDataHandler=1;
|
startElementHandler=endElementHandler=characterDataHandler=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
XMLTreeParser::~XMLTreeParser()
|
XMLTreeParser::~XMLTreeParser()
|
||||||
{
|
{
|
||||||
if (root)
|
if (root)
|
||||||
{
|
{
|
||||||
delete root;
|
delete root;
|
||||||
root=current=0;
|
root=current=0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user