aboutsummaryrefslogtreecommitdiff
path: root/common/xmlparser.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/xmlparser.h')
-rw-r--r--common/xmlparser.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/common/xmlparser.h b/common/xmlparser.h
index cd2580b448..31ba4e594e 100644
--- a/common/xmlparser.h
+++ b/common/xmlparser.h
@@ -51,7 +51,7 @@ namespace Common {
#define MAX_XML_DEPTH 8
#define XML_KEY(keyName) {\
- lay = new CustomXMLKeyLayout;\
+ lay = new CustomXMLKeyLayout;\
lay->callback = (&kLocalParserName::parserCallback_##keyName);\
layout.top()->children[#keyName] = lay;\
layout.push(lay); \
@@ -169,16 +169,14 @@ public:
XMLKeyLayout *layout;
};
- FixedSizeMemoryPool<sizeof(ParserNode), MAX_XML_DEPTH> _nodePool;
+ ObjectPool<ParserNode, MAX_XML_DEPTH> _nodePool;
ParserNode *allocNode() {
- void* mem = _nodePool.malloc();
- return new (mem) ParserNode;
+ return new (_nodePool) ParserNode;
}
void freeNode(ParserNode *node) {
- node->~ParserNode();
- _nodePool.free(node);
+ _nodePool.deleteChunk(node);
}
/**