summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2011-08-05 11:00:53 -0400
committerDana Jansens <danakj@orodu.net>2012-09-30 14:57:41 -0400
commitd58ed5c413e052e7ff58aa1ea15b475e9c335e07 (patch)
tree409a6f2a19ec9fc9e81e4f282b4888087078c050
parent69672e9d07381d088049e113da63b5beb7e90636 (diff)
Allow an xml tag to be unregistered from the xml parser.
-rw-r--r--obt/xml.c5
-rw-r--r--obt/xml.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/obt/xml.c b/obt/xml.c
index c8729129..fde3b76d 100644
--- a/obt/xml.c
+++ b/obt/xml.c
@@ -112,6 +112,11 @@ void obt_xml_register(ObtXmlInst *i, const gchar *tag,
g_hash_table_insert(i->callbacks, c->tag, c);
}
+void obt_xml_unregister(ObtXmlInst *i, const gchar *tag)
+{
+ g_hash_table_remove(i->callbacks, tag);
+}
+
static gboolean load_file(ObtXmlInst *i,
const gchar *domain,
const gchar *filename,
diff --git a/obt/xml.h b/obt/xml.h
index ac2dc57f..3884f36b 100644
--- a/obt/xml.h
+++ b/obt/xml.h
@@ -62,6 +62,7 @@ void obt_xml_close(ObtXmlInst *inst);
void obt_xml_register(ObtXmlInst *inst, const gchar *tag,
ObtXmlCallback func, gpointer data);
+void obt_xml_unregister(ObtXmlInst *inst, const gchar *tag);
void obt_xml_tree(ObtXmlInst *i, xmlNodePtr node);
void obt_xml_tree_from_root(ObtXmlInst *i);