aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorVicent Marti2008-07-03 10:26:55 +0000
committerVicent Marti2008-07-03 10:26:55 +0000
commit48fd843e759ab3a8a23ba2be902a8a815a41e8f8 (patch)
treeeeebd2d5368071bc596347736dfeb4e59cbf6b21 /common
parent8dbec866d6350c044297e16aa8ede432a3bd174b (diff)
downloadscummvm-rg350-48fd843e759ab3a8a23ba2be902a8a815a41e8f8.tar.gz
scummvm-rg350-48fd843e759ab3a8a23ba2be902a8a815a41e8f8.tar.bz2
scummvm-rg350-48fd843e759ab3a8a23ba2be902a8a815a41e8f8.zip
Rendering pipeline. WIP.
svn-id: r32882
Diffstat (limited to 'common')
-rw-r--r--common/xmlparser.cpp2
-rw-r--r--common/xmlparser.h8
2 files changed, 10 insertions, 0 deletions
diff --git a/common/xmlparser.cpp b/common/xmlparser.cpp
index 8ff93a4c59..3452db9e00 100644
--- a/common/xmlparser.cpp
+++ b/common/xmlparser.cpp
@@ -134,6 +134,8 @@ bool XMLParser::parse() {
if (_text.ready() == false)
return parserError("XML stream not ready for reading.");
+ cleanup();
+
bool activeClosure = false;
bool selfClosure = false;
diff --git a/common/xmlparser.h b/common/xmlparser.h
index 4850dc5113..d31c69ebee 100644
--- a/common/xmlparser.h
+++ b/common/xmlparser.h
@@ -332,6 +332,14 @@ protected:
return (*key == 0);
}
+ /**
+ * Internal state cleanup. Overload this if your parser needs
+ * to clean itself up before doing a second parse.
+ * E.g. the Theme Parser cleans the color palette after parsing
+ * a theme.
+ */
+ virtual void cleanup() {}
+
int _pos; /** Current position on the XML buffer. */
XMLStream _text; /** Buffer with the text being parsed */
Common::String _fileName;